[GHC] #8813: further support deriving instances Typeable1, Typeable2, etc

GHC ghc-devs at haskell.org
Fri Feb 21 09:21:15 UTC 2014


#8813: further support deriving instances Typeable1, Typeable2, etc
----------------------------------------------+----------------------------
        Reporter:  maeder                     |            Owner:
            Type:  task                       |           Status:  closed
        Priority:  normal                     |        Milestone:
       Component:  Compiler                   |          Version:
      Resolution:  wontfix                    |  7.8.1-rc1
Operating System:  Unknown/Multiple           |         Keywords:
 Type of failure:  GHC rejects valid program  |     Architecture:
       Test Case:                             |  Unknown/Multiple
        Blocking:                             |       Difficulty:  Unknown
                                              |       Blocked By:
                                              |  Related Tickets:
----------------------------------------------+----------------------------

Comment (by dreixel):

 Replying to [comment:7 maeder]:
 > The other simple alternative is to patch the renamer and rename the
 class Data.Typeable.TypeableN to Data.Typeable.Typeable.
 >
 > This surely does not reconcile typeOF and typeRep, but hand-written
 instances have been (sort of) deprecated long before.
 >
 > I'm not familiar with the internals of Data.Typeable

 Well, I am, and I couldn't find an acceptable solution. But, as I said
 before, I would very much welcome a better solution. It does have to be
 fully worked out so that we can judge whether it actually works or not. So
 please provide a replacement `Data.Typeable` that is better than the
 current one.

 > Furthermore, Data.!OldTypeable should be removed. It's more harmful to
 provide a second incompatible Typeable class.

 This was provided as a quick way to make old code compile by simply
 changing the import. It's marked as deprecated, and while it may not be
 entirely useful because `OldTypeable` and (New)`Typeable` instances are
 distinct, it can still make some old code work. I don't see it as harmful,
 but, again, I'm willing to be convinced otherwise.

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


More information about the ghc-tickets mailing list