| Date: Wed, 23 Sep 2009 07:44:54 -0500
 | From: "Brian Mastenbrook" <[email protected]>
 | 
 | On Wed, 23 Sep 2009 01:53:31 -0500, John Cowan <[email protected]> wrote:
 | 
 | > Since R3RS, Scheme has had notation for specifying more than one
 | > precision of inexact numeric constants.  R4RS standardized the
 | > current notation of replacing the normal E of exponential
 | > notation with the flags S (short), F (single), D (double), and L
 | > (long), and most Schemes support all these syntaxes.  However,
 | > all Schemes I can find provide, in fact, only one precision
 | > (which I conjecture to be IEEE double in all cases), so all these
 | > flags are useless to programmers.  I propose that they be dropped
 | > in R7RS.
 | 
 | I'm curious about why no Scheme provides IEEE single floats.  It
 | doesn't seem to be an intrinsically Scheme design decision, and as
 | you point out all extant Common Lisp implementations provide them.
 | Would any implementors care to comment?

SCM encodes any inexact real x which is equal to its signle-precision
value as a single-precision float.  A single-precision float and its
type header fits within a cons-cell, which saves space compared to a
boxed double-precision float.

_______________________________________________
r6rs-discuss mailing list
[email protected]
http://lists.r6rs.org/cgi-bin/mailman/listinfo/r6rs-discuss

Reply via email to