Recently, I just wanted to write some program and thought
about bignum support in XEmacs. I borrowed some code from
librep and implemented +. It was fairly easy and I put them
at
http://www.sodan.org/~penny/XEmacs/bignum-sample.tar.gz
It is written as an external loadble module so your XEmacs
must have module support enabled. It also requires gmp
version 3. Since a module can't modify lisp reader, it's
only provided as a sample and you can't just have bignum
support. I'd like to implement all numeric functions with
bignum support and eventually incorporate it into core (of
course it will be possible to disable big num support).
However, before I spend some time to hack it, I'd like to
ask some questions.
1. Do pepole want bignum support?
If 1 is yes, then:
2. What range should be accepted as (point)?
I think current 1GB max of buffer size is sufficient but it
can be extended to 2GB by allowing bignum which is in 32bit
range.
3. Should DEFVAR_INT'ed variables accept bignum?
My opinion is that it should be enough to have 31bit integer
for those variables, at least for now.
As an aside, should XEmacs support rational, too? It won't
be hard, either.
--
Yoshiki Hayashi