On 02/20/10 14:11, Greg Fitzgerald wrote:
You can dynamically link libgmp on windows. That might be easier:

Do you know if the dynamic link escape hatch has ever held up in
court?  Last time I looked into it, the free software community had
mixed opinions.

GMP is under LGPL, which is designed for this very purpose: to allow proprietary code to link to it as long as it is easy to replace the Free code with a different version of Free code (for example, by replacing a dynamic library). Is there any reason to doubt the FSF's efforts? (Note that LGPL doesn't work as well for Haskell code as for C code because Haskell compilers tend to do a lot more inlining; but GMP is C code.)

In any case, giving GMP the boot alleviates any
licensing concerns, makes the GHC build a little simpler, and allows
users to create standalone executables.

However the 3-clause BSD license is obviously at least somewhat simpler for lawyers.

Is there any reason we
shouldn't attempt to make integer-simple the default?

If you know that none of your code or libraries are using any particularly large integers [how would you know, though?], then it should perform alright. GMP, however, is the result of years of work making operations on integers large and small be reasonably performant -- work that Haskell would be foolhardy to duplicate, I'm guessing. (Depending what our standards are... Is reasonable performance for multiplying integers less than 320 bits long, say, good enough? What happens when someone wants state-of-the-art performance? Is a nonstandard-Integer-type GMP-binding sufficient for these uses?)

-Isaac
_______________________________________________
Glasgow-haskell-users mailing list
Glasgow-haskell-users@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-users

Reply via email to