emacs-devel
[Top][All Lists]
Advanced

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

Re: Pushing the `gnus-range-*' functions down into the C layer


From: David Kastrup
Subject: Re: Pushing the `gnus-range-*' functions down into the C layer
Date: Fri, 10 Sep 2010 17:22:48 +0200
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.0.50 (gnu/linux)

Andreas Schwab <address@hidden> writes:

> Lars Magne Ingebrigtsen <address@hidden> writes:
>
>> Ted Zlatanov <address@hidden> writes:
>>
>>> If everything was inside a num64-* namespace and a num64.el package,
>>> it's a pretty easy implementation. 
>>
>> I think for bignums to be interesting, they'd have to be native in
>> Emacs.  It'd suck if you had a number, but had to say
>>
>>   `(num64+ num1 num2)'
>>
>> if it's a bignum, and
>>
>>   `(+ num1 num2)'
>>
>> if not.  To take a random example.
>
> + already supports more than one type of number, so it would not be a
> problem to add support for yet another one.  But that does not require
> that Emacs supports bignums everywhere, just like there are already many
> places that accept integers but not floats.

Integers are not transparently promoted to floats depending on size.
Bignums are somewhat pointless if that isn't the case.  But then
integers of equal value are eq (and it is easy enough to need to make
use of that by using assq and similar).  Equal bignums, being variable
size, can't handily be eq unless they are kept behind hashes making sure
that at any given time, all bignums of equal value are kept in the same
storage location.

-- 
David Kastrup




reply via email to

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