[GHC] #10871: Implement "fat" interface files which can be directly compiled without source
GHC
ghc-devs at haskell.org
Thu Oct 15 11:17:55 UTC 2015
#10871: Implement "fat" interface files which can be directly compiled without
source
-------------------------------------+-------------------------------------
Reporter: ezyang | Owner: ezyang
Type: feature request | Status: new
Priority: normal | Milestone:
Component: Compiler | Version: 7.11
Resolution: | Keywords: backpack
Operating System: Unknown/Multiple | Architecture:
| Unknown/Multiple
Type of failure: None/Unknown | Test Case:
Blocked By: | Blocking:
Related Tickets: | Differential Rev(s):
Wiki Page: |
-------------------------------------+-------------------------------------
Comment (by simonmar):
Hmmm... as you know, I'm pretty strongly opposed to the idea of saving
source code, and this just seems like another variant of saving source
code. When the instantiations of the holes are available, just compile
the source code against the now-concrete dependencies. Until the concrete
instantiations are available, you can typecheck but do nothing else.
There are good reasons to want to do it this way - the main one being that
"cabal install" should be an effect-free operation, except insofar as it
makes things available in GHCi. If "cabal install" has a side effect,
then it becomes very hard to explain the user interface, because we have
to take into account the state of the system somehow, and I'm sure this
will cause problems for users. We really want "cabal install" to depend
on its inputs and nothing more. I understand that the motivation is to
compile "the same thing that we typechecked" in some sense, but the right
way to ensure that is to make sure you give "cabal install" the same
inputs that it had when you typechecked, that is, move the guarantee of
consistency to a higher level.
I don't object to the idea of fat interface files per se, but I wonder
whether it's a feature that will pay for itself.
--
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/10871#comment:9>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
More information about the ghc-tickets
mailing list