[GHC] #11011: Add type-indexed type representations (`TypeRep a`)

GHC ghc-devs at haskell.org
Sat Mar 5 20:13:39 UTC 2016


#11011: Add type-indexed type representations (`TypeRep a`)
-------------------------------------+-------------------------------------
        Reporter:  bjmprice          |                Owner:
            Type:  feature request   |               Status:  new
        Priority:  normal            |            Milestone:  8.2.1
       Component:  Compiler          |              Version:
      Resolution:                    |             Keywords:
Operating System:  Unknown/Multiple  |         Architecture:
                                     |  Unknown/Multiple
 Type of failure:  None/Unknown      |            Test Case:
      Blocked By:                    |             Blocking:
 Related Tickets:                    |  Differential Rev(s):
       Wiki Page:                    |
-------------------------------------+-------------------------------------
Changes (by bgamari):

 * milestone:   => 8.2.1


Comment:

 Replying to [comment:24 goldfire]:
 > I think we can have our cake and eat it too. Just use a new module name
 and then we can have `Data.Typeable.TypeRep` be different from
 `Data.Reflection.TypeRep`. (Of course, we can keep just one `Typeable`,
 happily.)

 This is an interesting idea; it would be great to be able to pull off this
 change without massive code breakage.

 That being said, to pick on the particular choice of names `Reflection`
 and `Typeable`: My only concern is that neither of these names suggest
 indexed or un-indexed other than the fact that `Data.Typeable` is
 currently unindexed. It would be nice to have a justification for these
 names for someone coming to the language without this historical context.
 Richard, can you think of a rationale here?

 I'm having trouble thinking of another name than `Reflection` that has a
 better story here.

 > I vastly prefer `TypeRep` and `TypeRepX` over `TTypeRep` and `TypeRep`.
 But I have no great reason for doing so.

 Right, I think I've also come around this view as well.

--
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/11011#comment:32>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler


More information about the ghc-tickets mailing list