[scheme-reports-wg2] Installing the floor of the R7RS-large numeric tower John Cowan 21 Apr 2014 01:20 UTC

I'm putting these questions for discussion and vote by R7RS-large WG
members, which at the moment means "anyone who wants to discuss and vote".
Votes go to <scheme-reports-wg2@googlegroups.com>; if you aren't on this
list, please join up (but you can send me your official vote for relay if you
want to).

Please note that not voting has no effect!  A majority of the legal votes
cast, yes or no, will decide each question.  Abstaining is not equivalent
to voting either yes or no, so if one person votes "yes" and no one
votes "no", the proposal passes.

R7RS-small puts few limitations on how much of Scheme's numeric tower
an implementation must provide, and therefore there is very little that
a strictly conforming program can't rely on.  For R7RS-large, which
(per its charter) "is large enough to address the practical needs of
mainstream software development, and can be extended and integrated
with other systems."  Only exact integers are required, and even there
the implementation doesn't have to provide them outside the range 0-29,
so that the characters of the string "call-with-current-continuation"
can be indexed.  Obviously, no implementation is so restrictive.

So I'm going to take it as written (unless someone raises a serious
objection) that R7RS-large will require at least 24-bit signed exact
integers (that being what R6RS required for fixnum support) and IEEE
64-bit binary floats as inexact numbers.  The only modern languages
that support less than this on reasonable hardware are those which only
support inexact numbers, like JavaScript and some Basics.

1) Should R7RS-large require arbitrarily large (up to implementation
restrictions like memory) exact integers?

2) Should R7RS-large require support for exact rational numbers?
(This is independent of #1: Wraith Scheme provides ratios of fixnums
but not bignums).

3) Should R7RS-large require support for exact complex numbers?

4) Should R7RS-large require inexact complex numbers, to consist of
pairs of 64-bit IEEE binary floats?

I'm setting the end of the ballot period for the end of 2014-05-05,
which by our usual conventions means noon on 2014-05-06, Universal Time.
If there's a lot of controversy, this period may be extended.

References:

See <http://trac.sacrideo.us/wg/wiki/NumericTower> for which Schemes
provide what parts of the tower.

See <http://trac.sacrideo.us/wg/wiki/FixnumInfo> for the fixnum sizes
of various 32-bit and 64-bit Schemes.

See <http://trac.sacrideo.us/wg/wiki/ComplexRepresentations> for which
Schemes provide what kinds of complex numbers.

See <http://trac.sacrideo.us/wg/wiki/FloatPrecision> for which Schemes
and Common Lisp implementations provide what kinds of inexact rationals.

--
John Cowan          http://www.ccil.org/~cowan        cowan@ccil.org
        "Not to know The Smiths is not to know K.X.U."  --K.X.U.

--
You received this message because you are subscribed to the Google Groups "scheme-reports-wg2" group.
To unsubscribe from this group and stop receiving emails from it, send an email to scheme-reports-wg2+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.