|
From: | Paul Eggert |
Subject: | Re: Floating-point constant folding in Emacs byte compiler |
Date: | Fri, 30 Mar 2018 09:39:05 -0700 |
User-agent: | Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.6.0 |
On 03/30/2018 09:26 AM, Pip Cet wrote:
with optimization, (lambda () (eq 1024.0 1024.0)) will still be false, but without optimization, it will turn into bytecode that always returns true
This problem is endemic to Lisp implementations and I wouldn't worry about it too much. In Scheme, for example, it is unspecifed whether (eq? 2.0 2.0) returns true or false, and Emacs Lisp could do the same. We'll have similar problems with bignums if we ever get around to implementing them.
[Prev in Thread] | Current Thread | [Next in Thread] |