
Judah Jacobson:
On Dec 18, 2007 8:54 PM, Manuel M T Chakravarty
wrote: Judah Jacobson:
- Statically linking against GMP puts extra license requirements on any ghc-compiled program; thus, dynamic linking is preferable.
Dynamic linking is preferable, because it is the simplest way to comply with the LGLP (specifically, Section 4(d)) in a closed-source program. However, it is incorrect to say that static linking leads to extra license requirements. All that is required is to enable users to use the program with a modified version of the GMP. There are two simple ways of doing that: (a) provide access to the .o files of your program so that they can statically link with a different version of the GMP or (b) to provide a version of the program linking GMP dynamically alongside the statically linked version.
In any case, no change of the closed-source program's licence is required.
Thanks for the correction and list of alternatives; both seem pretty reasonable. Either way, I guess you're "optimizing" for the casual user rather than for a hacker wanting to update GMP who won't be stopped by needing to statically link a bunch of .o files anyway.
That's right. Make it dead simple for the 99.999% of users who couldn't care less about GMP as long as it does implement Haskell's Integer nicely. The LGPL requires use to enable the remaining 0.001% to hack GMP to their hearts content. We need to meet this requirement, but these are power users who don't need the simplest install possible.
- On OS X, installing new frameworks is very easy (just drag-and- drop the framework into ~/Library/Frameworks or /Library/Frameworks; the former doesn't even need admin privileges). This doesn't seem like much to ask of users.
I think it is. It means, Haskell programs are more hassle to install than, say, C programs.
That's fair, although I think it's still less hassle than, e.g., installing a Ruby program on OS X Panther (which required first installing the whole of Ruby itself).
Yes, but on Leopard, Ruby is preinstalled, as is Python, and I'd like the barrier to entry to be as low as possible. Manuel