[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Making 'eq' == 'eql' in bignum branch
From: |
Alan Mackenzie |
Subject: |
Re: Making 'eq' == 'eql' in bignum branch |
Date: |
Sun, 26 Aug 2018 20:19:47 +0000 |
User-agent: |
Mutt/1.10.1 (2018-07-13) |
Hello, Paul.
On Sat, Aug 25, 2018 at 16:27:20 -0700, Paul Eggert wrote:
[ .... ]
> * Several modules assumes that buffer sizes fits into fixnums. This
> assumption is correct for Emacs master, though it will become dubious
> if we change Emacs to support buffer sizes greater than
> most-positive-fixnum. The affected modules are emacs-lisp/syntax.el,
> org/org-list.el, progmodes/cc-engine.el, progmodes/js.el, and
> simple.el.
I'm trying to imagine a buffer whose size won't fit into a fixnum, on a
64-bit machine. most-positive-fixnum is close to 2^61. Imagine
scrolling through a 2^61 byte buffer.
Let's imagine it has an average line length of 64 bytes, in a window 64
lines deep, and auto-repeat is at 16 screens per second. That's 2^(6+6+4)
characters per second scroll rate, i.e. 2^16.
So the number of seconds it would take would be 2^(61 - 16) = 2^45.
2^45 seconds = 2^45 / 86400 / 365.25 years, this being a little over 1.1
million years. Holding the PageDown key down for this length of time
would get a little tedious.
Surely, at least for 64-bit systems, expecting buffer sizes ever to
exceed fixnums, is somewhat unrealistic. Is anybody seriously going to
be editing a 540 Mbyte buffer on a 32-bit system nowadays?
Surely the assumption of buffer sizes being fixnums is realistic and
harmless.
--
Alan Mackenzie (Nuremberg, Germany).
- Re: Making 'eq' == 'eql' in bignum branch, (continued)
- Re: Making 'eq' == 'eql' in bignum branch, Stefan Monnier, 2018/08/22
- Re: Making 'eq' == 'eql' in bignum branch, Richard Stallman, 2018/08/20
- Re: Making 'eq' == 'eql' in bignum branch, Paul Eggert, 2018/08/25
- Tramp and fixnum (was: Making 'eq' == 'eql' in bignum branch), Michael Albinus, 2018/08/26
- Re: Tramp and fixnum (was: Making 'eq' == 'eql' in bignum branch), Paul Eggert, 2018/08/26
- Re: Tramp and fixnum (was: Making 'eq' == 'eql' in bignum branch), Eli Zaretskii, 2018/08/26
- Re: Tramp and fixnum, Michael Albinus, 2018/08/26
- Re: Tramp and fixnum, Michael Albinus, 2018/08/26
- Re: Making 'eq' == 'eql' in bignum branch, Tom Tromey, 2018/08/26
- Re: Making 'eq' == 'eql' in bignum branch, Stefan Monnier, 2018/08/26
- Re: Making 'eq' == 'eql' in bignum branch,
Alan Mackenzie <=
- Re: Making 'eq' == 'eql' in bignum branch, Stefan Monnier, 2018/08/26
- Re: Making 'eq' == 'eql' in bignum branch, Eli Zaretskii, 2018/08/26
- Re: Making 'eq' == 'eql' in bignum branch, Stefan Monnier, 2018/08/27
- Re: Making 'eq' == 'eql' in bignum branch, Paul Eggert, 2018/08/27
- Re: Making 'eq' == 'eql' in bignum branch, Eli Zaretskii, 2018/08/27
- Re: Making 'eq' == 'eql' in bignum branch, Stefan Monnier, 2018/08/27
- Re: Making 'eq' == 'eql' in bignum branch, Eli Zaretskii, 2018/08/27
- Re: Making 'eq' == 'eql' in bignum branch, Stefan Monnier, 2018/08/27
- Re: Making 'eq' == 'eql' in bignum branch, Paul Eggert, 2018/08/27
- Re: Making 'eq' == 'eql' in bignum branch, Richard Stallman, 2018/08/26