[GHC] #1480: Template Haskell should allow reification of modules

GHC ghc-devs at haskell.org
Tue Nov 5 10:48:32 UTC 2013


#1480: Template Haskell should allow reification of modules
----------------------------+----------------------------------------------
        Reporter:  igloo    |            Owner:
            Type:  feature  |           Status:  closed
  request                   |        Milestone:  7.8.1
        Priority:  highest  |          Version:  7.7
       Component:           |         Keywords:
  Template Haskell          |     Architecture:  Unknown/Multiple
      Resolution:  fixed    |       Difficulty:  Moderate (less than a day)
Operating System:           |       Blocked By:
  Unknown/Multiple          |  Related Tickets:
 Type of failure:           |
  None/Unknown              |
       Test Case:           |
        Blocking:  8398     |
----------------------------+----------------------------------------------

Comment (by simonmar):

 The source of truth for the design around usages and recompilation is
 [wiki:Commentary/Compiler/RecompilationAvoidance].

 You're right that !UsagePackageModule doesn't have a usg_exports field.
 For package modules we record a lower resolution dependency, just the hash
 of the whole module.  The rationale is that package modules don't change
 very often, so we don't need to track fine-grained dependency information
 about them.  This does mean that we can't tell the difference between a
 direct import and an indirect import of a packages module from the
 `Usages`.  Probably if you need to get a list of direct imports you should
 get it from somewhere else, e.g. `mg_dir_imps` from `ModGuts`.

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


More information about the ghc-tickets mailing list