Andreas Eder wrote:
> Well, radcan(x^0.000000001/x^0.00000001); worked for me in sbcl
> and clisp on an 64-bit platform and in gcl on a 32 bit platform.
> But in cmucl on 32-bit it errors out with:
>
> `rat' replaced -9.e-9 by -1/111111111 = -9.000000008999999e-9
> Maxima encountered a Lisp error:
>
>
> Error in function KERNEL::INTEXP:
> The absolute value of 111111111 exceeds EXTENSIONS:*INTEXP-MAXIMUM-EXPONENT*.
>
> and it didn't matter whether pcoefadd was changed to test for
> bignums or not! It seem to be a problem with the underlying lisp.
> So I see no way around that except to use a 64-bit lisp
> implementation.
>
>
You must be using a fairly old version of cmucl, say before 2006/06,
because after that date, there was a change in cmucl so that 1^n didn't
signal an error. It was done explicitly for maxima.
You could increase *intexp-maxima-exponent*, of course. I think the
limit is there to keep you from doing something like bignum^bignum and
running out of memory and crashing your lisp.
Ray