Float, bug 2688847 and testsuite



On 7/10/10 1:16 PM, Paulo Gomes wrote:
> Hello,
>
> I have just succesfully built maxima 5.21.1 from source with gcl in
> Debian 5.0 lenny.
> I ran the test suite and all tests completed with 'Which was correct',
> except these two:
>
> Running tests in rtest16:
> ********************** Problem 180 ***************
> Input:
> float((2^60-1)/2^60)-1
> Result:
> -1.1102230246251565*10^-16
>
[snip]
> However, the sourceforge maxima bug tracker
>
> http://sourceforge.net/tracker/index.php?func=detail&aid=2688847&group_id=4933&atid=104933
>
>
> states that this bug is fixed and closed.
>
> Do any of you have an explanation (or have found the same)?
I believe these are not bugs in maxima.  I think these are considered
bugs in the Lisp implementation.  Maxima just passes the rational value
to CL:FLOAT, expecting the Lisp implementation to return a properly
rounded floating-point value.  We don't really want maxima to implement
replacements for everything just because some Lisp implementation does
the wrong thing.

I'd basically ignore these few failures.  Or you can use some other Lisp
implementation like ccl, clisp, cmucl, ecl, or sbcl.

Ray