[GHC] #9858: Typeable instances should be kind-aware

GHC ghc-devs at haskell.org
Thu Feb 5 16:24:07 UTC 2015


#9858: Typeable instances should be kind-aware
-------------------------------------+-------------------------------------
        Reporter:  dreixel           |                   Owner:  dreixel
            Type:  bug               |                  Status:  new
        Priority:  highest           |               Milestone:  7.10.1
       Component:  Compiler          |                 Version:  7.9
      Resolution:                    |                Keywords:
Operating System:  Unknown/Multiple  |            Architecture:
 Type of failure:  None/Unknown      |  Unknown/Multiple
      Blocked By:                    |               Test Case:
 Related Tickets:                    |                Blocking:
                                     |  Differential Revisions:
-------------------------------------+-------------------------------------

Comment (by int-e):

 > {{{
 > f :: Typeable (Proxy :: k -> *) => Proxy (Proxy :: k -> *) -> TypeRep
 > }}}
 >
 > Looks fine to me. Am I missing something?

 I'm happy with this type, it's very reasonable, and reflects the fact that
 some evidence (for `Typeable`) has to be provided by the caller.

 My main point was that this change will not be 100% backwards compatible
 (note that the new inferred type for `f` is different from what ghc 7.10
 RC2 infers.) I was also slightly afraid that you might want to fudge
 things (by omitting the extra evidence from Haskell-level type signatures)
 to make the medium term solution fully backward compatible, but apparently
 that fear was unjustified.

 The open question is whether this incompatibility will affect existing
 real world code.

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


More information about the ghc-tickets mailing list