[GHC] #7730: :info and polykinds
GHC
ghc-devs at haskell.org
Thu May 8 11:55:14 UTC 2014
#7730: :info and polykinds
--------------------------------------------+------------------------------
Reporter: monoidal | Owner: archblob
Type: bug | Status: new
Priority: normal | Milestone: 7.10.1
Component: Compiler (Type checker) | Version: 7.6.2
Resolution: | Keywords:
Operating System: Unknown/Multiple | Architecture:
Type of failure: None/Unknown | Unknown/Multiple
Test Case: | Difficulty: Unknown
Blocking: | Blocked By:
| Related Tickets: #8776
--------------------------------------------+------------------------------
Comment (by simonpj):
Some responses
* On the `IfaceTcArg` thing (comment 35), I suggested a whole new list
type because it'll be more compact and faster to parse in interface files.
Rather than two bytes and two decisions (nil/cons, and type/kind) there'll
just be one. But the data type would need a Note to explain that
reasoning.
* On the qualified names point (also comment 35), I can see that
`IfaceDecl`s only have an `OccName` in them because interface declarations
"know" their host module. That's no longer true when converting arbitrary
`TyThings` to `IfaceSyn`. So the `ifName` field of `IfaceDecl` will have
to become `IfExtName`. Probably not too bad.
* Re promotion (comment 36), yes I agree.
All of these things will make interface files a little more verbose. It
probably won't have any effect, but could you do some performance checks?
With these changes alone:
* Measure the effect on `.hi` file sizes for libraries (eg `base`)
* Measure the effect on compile times (or, easier to get at, compiler
allocation), say when bootstrapping GHC, or compiling the base libraries.
--
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/7730#comment:37>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
More information about the ghc-tickets
mailing list