[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Gcl-devel] [Maxima] Stable Maxima version on Gentoo
From: |
Raymond Toy |
Subject: |
Re: [Gcl-devel] [Maxima] Stable Maxima version on Gentoo |
Date: |
Sat, 03 Nov 2012 09:28:01 -0700 |
User-agent: |
Gnus/5.1008 (Gnus v5.10.8) XEmacs/21.5-b32 (darwin) |
>>>>> "Camm" == Camm Maguire <address@hidden> writes:
Camm> Greetings!
Camm> Raymond Toy <address@hidden> writes:
>>>>>>> "Camm" == Camm Maguire <address@hidden> writes:
>>
Camm> Greetings!
Camm> "Stewart W. Wilson" <address@hidden> writes:
>>
>> >> The fix does not seem to be exactly trivial. Please see the attached
>> >> paper by Steele and White from 1990.
>> >>
>>
Camm> Thanks so much for this reference!
>>
Camm> Unfortunately, using up to forty 32bit words in bignum arithmetic to
Camm> print out floats looks prohibitively expensive, although the algorithm
Camm> does appear to work nicely, at least when coded in lisp.
>>
>> FWIW, cmucl has a lisp implementation of Dybvig's float printer.
>> Perhaps that will work for you?
>>
Camm> It might very well. But is there anything objectionable to a loop
over
Camm> strtod when printing? Even in corner cases, it appears very fast.
It seems so random. What happens if strtod prints out xxx...99999
when the "true" answer is xxxy...0000? And the corner cases might not
be what you think are corner cases. For example, see
http://trac.common-lisp.net/cmucl/ticket/1.
At least with the lisp code you have a provably correct algorithm
guaranteed to produce the correct answer. (Barring bugs in
implementation, of course!)
Ray