[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bignums are bogus

The intent of that passage is that the size of bignums should be *much*
larger than the size of fixnums.  It is true that the language does not
require that bignums be able to exhaust *all* of the machine's available
address space (or swap space), and that other implementation limits
(such as the maximum array index being a fixnum) may intrude in some
cases.  But I think that any implementation that doesn't normally allow
bignums of at least a few K bytes is cheating on the spirit, if not the
letter, of the specification.

As for how these things die when you finally reach the overflow point, I
think that this was viewed as a rare enough thing that it wasn't worth
trying to standardize it as a separate error type.  Presumably you get
the same effect that you would get if you exhausted the available space
in some other way, or if you asked for an array bigger than the space
remaining.  It is tasteful for this to be a clean, recoverable error,
but it is not required to be -- there has to be some freedom here, since
operating systems vary in the control they give you over memory
allocation and the amount of information they will give you about
available space.

-- Scott