[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
string->number
| From: Thomas Bushnell BSG <tb@xxxxxxxxxx>
| Date: Thu, 02 Jun 2005 09:16:37 -0700
|
| Aubrey Jaffer <agj@xxxxxxxxxxxx> writes:
|
| > To first order:
| >
| > (define (precision-of x) (string-length (number->string x)))
| >
| > R5RS requires all numbers to have external representations; and it
| > specifies the allowed formats.
|
| What? number->string does not specify the allowed formats for
| exact numbers, only for inexact (and only for some inexact numbers
Yes, I should have written "inexact numbers".
| at that). This isn't an accident; it was done specifically for
| just this reason, to allow for different representations. See the
| Rationale:
|
| "The unspecified case allows for infinities, NaNs, and non-flonum
| representations."
|
| So if X is an exact version of sqrt 2, it's perfectly fine for
| number->string to return anything that string->number can
| understand.
Can number->string return a string which can't be READ as a number?
I had thought that 6.2.4 "Syntax of numerical constants" and 7.1.1
"Lexical structure" applied to the results of NUMBER->STRING. If they
are independent, a note about that should be added to the report.