7.6.2.19 rnrs arithmetic fixnums

The (rnrs arithmetic fixnums (6)) library provides procedures for
performing arithmetic operations on an implementation-dependent range of
exact integer values, which R6RS refers to as fixnums. In Guile,
the size of a fixnum is determined by the size of the SCM type; a
single SCM struct is guaranteed to be able to hold an entire fixnum,
making fixnum computations particularly
efficient—(see The SCM Type). On 32-bit systems, the most
negative and most positive fixnum values are, respectively, -536870912
and 536870911.

Unless otherwise specified, all of the procedures below take fixnums as
arguments, and will raise an &assertion condition if passed a
non-fixnum argument or an &implementation-restriction condition
if their result is not itself a fixnum.

Scheme Procedure: fixnum?obj

Returns #t if obj is a fixnum, #f otherwise.

Scheme Procedure: fixnum-width

Scheme Procedure: least-fixnum

Scheme Procedure: greatest-fixnum

These procedures return, respectively, the maximum number of bits
necessary to represent a fixnum value in Guile, the minimum fixnum
value, and the maximum fixnum value.