Dynamic libraries by default and GHC 7.8

Brandon Allbery allbery.b at gmail.com
Wed Nov 28 05:39:55 CET 2012


On Tue, Nov 27, 2012 at 9:57 PM, Tyson Whitehead <twhitehead at gmail.com>wrote:

> it seemed a big part of the problem is you really need to be able to
> have multiple versions of the same package installed.
>
> At the time, I believe the only way to do this was to include part of
> the hash in the name, but that meant you had to constantly be creating
> new packages which Debian didn't make easy.
>
> Maybe it is time to explain the problem to the Debian packaging people
> and see if they have any ideas from their level?
>

Not sure they do, because it's a GHC-specific and very nasty problem at
core.

The fundamental issue is that GHC does aggressive cross-module inlining to
make performance halfway reasonable -- but this means you end up requiring
very precise dependencies, because different builds of the same library
even with the same compiler might for some reason expose different things
for inlining, and that ends up infecting the whole dependency chain.  Done
statically, the result is the infamous Cabal hell; done dynamically, it
means shared library hell.  I am not sure it can be made sane in either
case.

-- 
brandon s allbery kf8nh                               sine nomine associates
allbery.b at gmail.com                                  ballbery at sinenomine.net
unix, openafs, kerberos, infrastructure, xmonad        http://sinenomine.net
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.haskell.org/pipermail/glasgow-haskell-users/attachments/20121127/66482332/attachment-0001.htm>


More information about the Glasgow-haskell-users mailing list