|
![](/i/fill.gif) |
On 06/12/2010 09:56 AM, scott wrote:
>> Apparently the compiler's dead code elimination works quite well. But
>> anyway, I guess you'd have to have quite a lot of Haskell executables
>> before the disk space and setup complexity of DLLs makes it even
>> vaguely worth the effort.
>
> It's a huge win if you're repeatedly transferring the same programs to
> the same machine (eg rolling out updates). Also given that people
> downloading your Haskell programs might also be looking at other Haskell
> programs, it probably worth offering two versions to download (one that
> requires the DLLs, one that doesn't).
I haven't tested this (actually I /can't/ test this), but I have a
sinking feeling that the DLLs have to be generated by the same compiler
version as the executable using them.
That means that if you have two Haskell programs compiled with different
versions of GHC, they /still/ can't actually share DLLs.
(OTOH, since GHC 7.0.1 is currently the /only/ version of GHC in
existence that can create DLLs this way, currently it's a non-issue.
This is also the reason why I can't test it...)
Of course, if you're distributing a bunch of related Haskell programs
together, they will (presumably) all be compiled together, and they can
share DLLs.
Still, the idea of making a shared library that needs to be recompiled
for every patch-level release of the compiler is... uh... unappealing?
Post a reply to this message
|
![](/i/fill.gif) |