Sam wrote:
> bignums are stored in uint32[N] with N<= 2^16-2.
> why "-2"?
I don't understand this either. I thought it would be 2^16-1. But this is not
important.
> why ^16 and not ^array-total-size-max
Because 1. a two-byte length field is more effcient to access than a 3-byte
length field, and 2. as explained in comp.lang.lisp, a reasonable error
message is preferrable to math operations that consume 500 MB of RAM or
10 days of time. (Think about the user who wanted to square his number 10
times but through a simple programming mistake is squaring it 30 times.)
Bruno