On Mon, Dec 19, 2016 at 02:17:52PM +0100, Daniel Kochmański wrote:
I have already tested with Maxima, see: https://gitlab.com/embeddable-common-lisp/ecl/issues/307 . ECL doesn't accept denormals by default now, I suspect that this is the main cause of this error (but I didn't know how to investigate maxima problems further – i.e what error was cought).
Trying to evaluate this in Maxima built with ECL 16.1.3 leads to this error:
(%i1) li[2](1.0*%i); Condition of type: DIVISION-BY-ZERO
I built ECL 16.1.2 and 16.1.3 from sources on my 64-bit Linux box. It looks like the problem comes down to this:
On ECL 16.1.2:
(log #c(0.0 -1.0))
#C(0.0 -1.5707964)
(log #c(-0.0 -1.0))
#C(0.0 -1.5707964)
while on 16.1.3:
(log #c(0.0 -1.0))
#C(0.0 -1.5707964)
(log #c(-0.0 -1.0))
Condition of type: DIVISION-BY-ZERO
Cheers, Kris Katterjohn