[GHC] #10871: Implement "fat" interface files which can be directly compiled without source

GHC ghc-devs at haskell.org
Mon Oct 19 08:50:46 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 simonpj):

 > Let me re-answer your questions: What does it mean to install an
 indefinite package? We install just the interface files, so that we can
 typecheck against it

 We need more than that.  We need to compile the indefinite package to code
 when we fill its holes.  So we need access to its source code in some
 form.

 One way to do that is to keep the original Haskell source code (pre-cpp,
 pre-everything) and typecheck it from scratch, being (a) careful to keep a
 copy of the source code and (b) ever so careful to replay exactly the
 front-end compiler flags that were used the first time round.  We could do
 this.  But it's just easier to snapshot the Core bindings that we already
 have in our hand.  With unfoldings in interface files we already do this;
 it's mainly a question of keeping all unfoldings, not just some.

 It's not an efficiency issue.  If it's easier to compile again from source
 (remembering all the C bits etc) then let's do that.  To me it looks
 harder.  And that's the core issue to debate.

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


More information about the ghc-tickets mailing list