bug-guile
[Top][All Lists]
Advanced

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

Re: (expt 2 -1)


From: Marius Vollmer
Subject: Re: (expt 2 -1)
Date: 23 Feb 2002 19:16:29 +0100
User-agent: Gnus/5.09 (Gnus v5.9.0) Emacs/21.1

Aubrey Jaffer <address@hidden> writes:

> address@hidden munspectra]$ guile --version
> Guile 1.4
> ...
> address@hidden munspectra]$ guile
> guile> (expt 2 -1)
> ERROR: In procedure integer-expt:
> ERROR: Argument out of range: -1
> ABORT: (out-of-range)
> 
> is fixed by this patch:

Thanks!  We already have a fixed version of expt:

    (define expt
      (let ((integer-expt integer-expt))
        (lambda (z1 z2)
          (cond ((integer? z2)
                 (if (>= z2 0)
                     (integer-expt z1 z2)
                     (/ 1 (integer-expt z1 (- z2)))))
                ((and (real? z2) (real? z1) (>= z1 0))
                 ($expt z1 z2))
                (else
                 (exp (* z2 (log z1))))))))



reply via email to

[Prev in Thread] Current Thread [Next in Thread]