This site is a static rendering of the Trac instance that was used by R7RS-WG1 for its work on R7RS-small (PDF), which was ratified in 2013. For more information, see Home. For a version of this page that may be more recent, see FixnumInfo in WG2's repo for R7RS-large.

Fixnum­Info

cowan
2012-03-01 05:41:22
1history
source

This is the range of fixnums in bits for the 32-bit builds of 39 Schemes. For this purpose, an exact integer n is a fixnum if n satisfies the implementation's fixnum? procedure (marked by an asterisk) or if there is no such procedure, then if (eq n n) returns #t.

31 bits: Racket*, Chicken*, Ypsilon*, Elk

30 bits: Gambit* , Scheme48/scsh, Guile, Chibi, Chez*, SCM, Ikarus*/Vicare*, Larceny*, Ypsilon*, Mosh*, IronScheme* (but see below), STklos*, RScheme*, Oaklisp*

29 bits: Gauche*, Bigloo*, SigScheme

26 bits: MIT*

16 bits: Owl Lisp*

9 bits: Scheme 7

No fixnums (even (eq? 0 0) is #f): SISC, KSi, TinyScheme, Scheme 9, Dream, BDC, UMB

Apparently unbounded fixnums: Shoe, Schemik, VX

Answer not easily determined: NexJ, XLisp, rep

In Kawa and IronScheme all exact integers are boxed, but a short range is preallocated, so that eq? is satisfied: -100 to 1024 for Kawa, -100 to 999 for IronScheme.