[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH] Fix bugs in expt and integer-expt
From: |
Ludovic Courtès |
Subject: |
Re: [PATCH] Fix bugs in expt and integer-expt |
Date: |
Wed, 10 Nov 2010 23:01:16 +0100 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/23.2 (gnu/linux) |
Hello!
Looks good to me, now that I know about inexact integers. ;-)
Just a couple of details:
Mark H Weaver <address@hidden> writes:
> From 19a24107af814e34fe63d02478bfb9441354625e Mon Sep 17 00:00:00 2001
> From: Mark H Weaver <address@hidden>
> Date: Thu, 4 Nov 2010 22:10:02 -0400
> Subject: [PATCH] Fix bugs in expt and integer-expt
>
> * libguile/numbers.c (expt): Fix bug that caused expt to throw an
> exception whenever the base was exact and the exponent was an
> inexact integer, e.g. (expt 5 6.0).
>
> (expt): Fix bug that caused expt to introduce spurious imaginary
> parts in the result when the base was an inexact negative real and
> the exponent was an integer, e.g. (expt -1.0 2)
>
> (integer-expt, expt): Change behavior of (integer-expt 0 -1), and
> therefore also (expt 0 -1), to return NaN, per R6RS (actually, R6RS
> says we should throw an exception or return an "unspecified number
> object", but for now we use NaN). Formerly we returned 0, per R5RS.
> R5RS claims that 0^x=0 for all non-zero x, but that's mathematically
> incorrect, and probably an oversight.
>
> (integer-expt): Consistently throw a wrong-argument-type exception
> when the exponent is inexact. Formerly, it didn't always check this
> if the base was 0, 1, or -1.
>
> * test-suite/tests/numbers.test ("integer-expt", "expt"): Add tests.
Please use the C function names for C code, in the log.
Also, can you add a reference to bug #31464 in the log and next to the
corresponding test cases?
Finally, can you document the change for 0^x with x != 0 in NEWS and
explain the departure from R5RS in doc/ref/api-data.texi?
Thanks!
Ludo’.
- Re: fix for expt bug, (continued)
- Re: fix for expt bug, Ludovic Courtès, 2010/11/03
- Re: fix for expt bug, Mark H Weaver, 2010/11/04
- Re: fix for expt bug, Ludovic Courtès, 2010/11/08
- Re: fix for expt bug, Andy Wingo, 2010/11/20
- Re: fix for expt bug, Ludovic Courtès, 2010/11/21
- [PATCH] Fix bugs in expt and integer-expt, Mark H Weaver, 2010/11/04
- Re: [PATCH] Fix bugs in expt and integer-expt,
Ludovic Courtès <=