[GHC] #8398: reify module list in TH

GHC ghc-devs at haskell.org
Sun Oct 20 23:20:23 UTC 2013


#8398: reify module list in TH
-------------------------------+-------------------------------------------
        Reporter:  errge       |            Owner:
            Type:  feature     |           Status:  patch
  request                      |        Milestone:  7.10.1
        Priority:  normal      |          Version:  7.7
       Component:  Template    |         Keywords:
  Haskell                      |     Architecture:  Unknown/Multiple
      Resolution:              |       Difficulty:  Easy (less than 1 hour)
Operating System:              |       Blocked By:  1480
  Unknown/Multiple             |  Related Tickets:  #8337
 Type of failure:              |
  None/Unknown                 |
       Test Case:              |
        Blocking:  7867        |
-------------------------------+-------------------------------------------
Changes (by errge):

 * blockedby:  8426 => 1480
 * milestone:  7.8.1 => 7.10.1


Comment:

 This current patch seems to be a bad idea because of the reifyModuleNames
 API.

 It returns a list of modules that are currently "known by the compiler".
 This "known by the compiler" is very GHC specific, related to orphan
 modules and hard to text as a standard that is easy to Haskell
 implementors to follow.

 A better API to provide is "a list of modules that this module depends"
 and "a list of modules that this module depends on transitively".

 The first is provided by #1480 and on top of that the second can be
 implemented as a helper method totally in Language.Haskell.TH.Lib, without
 introducing new Q monad instructions or changing the compiler in any way.

 Therefore I'm setting this blocked by #1480 and targeting 7.10.

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


More information about the ghc-tickets mailing list