Hi Werner, you are right, I will try it 2015-02-03 10:22 GMT-03:00 Ben Coman <btc@openinworld.com>:
On Tue, Feb 3, 2015 at 12:58 AM, phil@highoctane.be <phil@highoctane.be> wrote:
On Mon, Feb 2, 2015 at 5:22 PM, Pierre CHANSON <chans.pierre@gmail.com> wrote:
Hi everyone, I was wondering if there was a package to manipulate floats like the MPFR library in C...
One issue with MPFR is the licensing, which is GNU.
No, its LGPL (http://www.mpfr.org/). Now something I didn't know and just read, you can even statically link an LGPL library, as long as you provide
I wonder if Pharo couldn't get a special licence for embedding as "MPFR has continuously been supported by the INRIA <http://www.inria.fr/>...".
Pharo is now 32-bit and uses the floatplugin to do the actual fast math.
Pharo with the 64-bit system will be able to do better and the float plugin will have to be rewritten anyway.
But MPFR could be put into a plugin.
As far as I am concerned, I'd rather get something based on GMP ( https://gmplib.org/) but we are there in GNU territory. Which is not what I want for commercial apps.
Why GMP? From the timings table it looks like GMP is missing trigonometric functions, and that MPFR is equally as fast as GMP. cheers -ben
This table: http://www.mpfr.org/mpfr-current/timings.html is showing some LGPL licencing that may be easier to deal with. But for sure, none of that is MIT :-(
Phil
Then I found in http://stephane.ducasse.free.fr/Web/Draft/Float.pdf that using ScaledDecimal allows exact arithmetics. So I guess ScaledDecimal is the best class to use for playing with 20 decimals numbers ? :)
Thanks !
Pierre