emacs-devel
[Top][All Lists]
Advanced

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

Re: Making --with-wide-int the default


From: David Kastrup
Subject: Re: Making --with-wide-int the default
Date: Fri, 16 Oct 2015 11:00:52 +0200
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/25.0.50 (gnu/linux)

Paul Eggert <address@hidden> writes:

> David Kastrup wrote:
>> Instead of going to 64-bit unilaterally it would seem to make more sense
>> to me to degrade gracefully into gmp.  GUILE does that, I think that
>> XEmacs or SXEmacs can do it, and it's usual for Lisp implementations.
>
> In my spare time I've been working on something along those lines, but
> it's not at all ready for prime time. Some Emacs code assumes that
> integer overflow silently wraps around, and another common assumption
> is that integers are = if and only if they are eq. Bignums violate
> both assumptions.

Yes.  The LilyPond code base (running on GUILE) is riddled with code
that assumes integers are eq.  Fixing that is slow work.  On the other
hand, the unfixed code does not really work worse than Emacs' code works
now: neither cannot handle values larger than standard integers.

In order to get the same semantics as now, a GMP number should be
converted back to a native LISP integer whenever it's small enough
again.  That provides some slight overhead for arithmetic that had to
happen in GMP, but then we are outside of the main performance
characteristic anyway.

-- 
David Kastrup



reply via email to

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