[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Scheme-reports] Strong win later reversed: Real numbers have imaginary part #e0



Mark H Weaver scripsit:

> Common Lisp, and (as far as I can tell) Wolfram Alpha do not keep track
> of the exactness of their results, so they can simply turn 1.0+0.0i
> into 1.0.

ANSI CL 12.1.5.3 forbids that behavior.  5 and 5+0i are required to be
the same object, whereas 5.0 and 5.0+0.0i are required to be different
objects.

I have detailed the situation with multiple representation of
inexact numbers for the usual 45 Schemes plus 10 Common Lisps at
<http://trac.sacrideo.us/wg/wiki/FloatPrecision>.  The short version is
that most Schemes have IEEE double as the only representation.  Racket and
NexJ have both IEEE single and IEEE double, as do most Common Lisps.
LispWorks has three distinct representations, CLISP has four.  A few
Schemes don't have inexact numbers at all.

-- 
I suggest you solicit aid of my followers       John Cowan
or learn the difficult art of mud-breathing.    cowan@x
        --Great-Souled Sam                      http://www.ccil.org/~cowan

_______________________________________________
Scheme-reports mailing list
Scheme-reports@x
http://lists.scheme-reports.org/cgi-bin/mailman/listinfo/scheme-reports