[GHC] #10566: Move "package key" generation to GHC

GHC ghc-devs at haskell.org
Tue Jul 7 08:01:24 UTC 2015


#10566: Move "package key" generation to GHC
-------------------------------------+-------------------------------------
        Reporter:  ezyang            |                   Owner:  ezyang
            Type:  bug               |                  Status:  new
        Priority:  normal            |               Milestone:  7.12.1
       Component:  Package system    |                 Version:  7.10.1
      Resolution:                    |                Keywords:
Operating System:  Unknown/Multiple  |            Architecture:
 Type of failure:  None/Unknown      |  Unknown/Multiple
      Blocked By:                    |               Test Case:
 Related Tickets:                    |                Blocking:
                                     |  Differential Revisions:
-------------------------------------+-------------------------------------

Comment (by ezyang):

 > Examples? Even a list of all the examples. There are probably not many.

 The main situation is when GHC decides that, when printing a type, we have
 to disambiguate package identity since providing a module is not enough.
 This happens fairly rarely unless you have multiple versions of a package
 in scope, since Haskell library authors are fairly good at not having
 module name collisions; and in any case, one of the packages is going to
 be in the installed package database in any case.

 But this capability is more important for Backpack, when we instantiate a
 package multiple times: then we want to say `p(A -> q():A).M.T` is not
 equal to `p(A -> r():A).M.T`, rather than say that
 `1XrbHBg7VzL5pL46pujtdS` is not equal to `ISxd2jw4dc5G3vUrxkRNkV`. So I
 built in the package name to the definition of a package key.

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


More information about the ghc-tickets mailing list