[Larceny-users] A Floating Hole

David Rush kumoyuki at gmail.com
Sun Apr 26 18:56:02 EDT 2009


I am currently moderately annoyed that

> (cos (acos 0))
6.123233995736766e-17

on Larceny. Now it appears that this is an inescapable feature of the
C runtime; however, given that FLT_MIN on the x86 platform is 1E-37,
mapping this result to #i0 is somewhat problematic. Since I'm finding
that neither R5RS nor R6RS are really offering much help on this score
(the requirement appear to be that the implementation not lose
precision from that present in the arguments) I'm wondering if there
is a Larceny-specific way to either

1) get a more accurate cos function (e.g. POSIX cosl which returns a
long double)
2) extract some kind of underlying precision information about the
Larceny's flonums (and maybe individual operations)

I suspect the answers to both of the above are probably "no" (modulo
an excursion into the FFI). But I am trying to use Larceny for
numerics these days and I would be interested as to what the state of
the art best practices are...

david rush
-- 
GPG Public key at http://cyber-rush.org/drr/gpg-public-key.txt



More information about the Larceny-users mailing list