[Haskell-cafe] Re: Non-technical Haskell question
Jules Bean
jules at jellybean.co.uk
Tue Dec 7 03:10:14 EST 2004
On 6 Dec 2004, at 21:56, Sven Panne wrote:
> Jules Bean wrote:
>> I don't think it does, actually. You can imagine a compiler which has
>> access to not *only* the .so files, but also the haskell source.
>> Therefore it can still unroll (from the source), but it can choose to
>> link to an exported symbol if unrolling isn't worth it.
>
> But that's not dynamic linking... Imagine a bug in version X of your
> lib,
> simply using version X+1 with your already compiled program won't fix
> that
> bug. Again, this is just like C++.
>
Absolutely. And, as such, it's a possible solution. You don't get all
the advantages of dynamic linking: you can't get in-place upgrades on
bugfix libraries. You do get other advantages though: reduced disk
space and shared in-memory images.
To get a more sophisticated solution you need to have a more
instrumented object format, and move various optimisations either
just-in-time or launch-time. (And then you lose the shared in-memory
advantage, again...)
Jules
More information about the Haskell-Cafe
mailing list