[GHC] #9111: base should export Typeable instances of its promoted data constructors
GHC
ghc-devs at haskell.org
Mon May 19 23:07:34 UTC 2014
#9111: base should export Typeable instances of its promoted data constructors
-------------------------------------+------------------------------------
Reporter: goldfire | Owner:
Type: feature request | Status: new
Priority: normal | Milestone:
Component: Compiler | Version: 7.8.2
Resolution: | Keywords:
Operating System: Unknown/Multiple | Architecture: Unknown/Multiple
Type of failure: None/Unknown | Difficulty: Unknown
Test Case: | Blocked By:
Blocking: | Related Tickets:
-------------------------------------+------------------------------------
Comment (by simonpj):
Ah yes I see.
* The key module is `Data.Typeable.Internal`.
* It declares the `Typeable` class, which mentions the data type
`TypeRep`.
* In turn `TypeRep` uses `Fingerprint` from `GHC.Fingerprint.Type`
* And fingerprints use various `Word` types to do grungy stuff.
As a result, `Data.Typeable.Internal` has to depend on `GHC.Word` etc. It
also depends on a bunch of other things and I'm not sure they are all
necessary. It would be good to make it depend on as little as possible.
Regardless,
* the modules "below" `Data.Typeable.Internal` (i.e. the modules on which
`D.T.I` depends) can't be compiled with `DeriveAutoTypeable`; instead
there are `deriving instance Typeable T` declarations in `D.T.I` for all
of their types.
* all other modules in `base` can have `DeriveAutoTypeable`.
Does that make sense? Who would like to do it?
Simon
--
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/9111#comment:16>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
More information about the ghc-tickets
mailing list