chicken-hackers
[Top][All Lists]
Advanced

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

Re: [Chicken-hackers] [PATCH] Re: make check failing


From: John Cowan
Subject: Re: [Chicken-hackers] [PATCH] Re: make check failing
Date: Thu, 27 Dec 2012 20:32:56 -0500
User-agent: Mutt/1.5.20 (2009-06-14)

Peter Bex scripsit:

> I think we should seriously consider supporting bignums in core.  They
> won't add much extra overhead in terms of optimizations; the scrutinizer
> already needs to consider the possibility that a fixnum overflows into a
> flonum.  Overflowing into a bignum isn't much different.  In fact, it's
> slightly more precise because you know that they're always integral,
> while you lose that information when switching to flonums.  This at
> least allows for some (admittedly trivial) optimizations you don't get
> when using flonums, like knowing that integer? and exact? return true.

Well, there is is something to be said, in a fast compiler, for all
arithmetic running in constant time.  That's what Stalin provides, FWIW.
On the other hand, the other systems that provide fixnum-flonum support
only are slow interpreters: RScheme, VX, Inlab, and Sizzle.  (There are
also a bunch of interpreters with wrapping-fixnum and flonum support,
namely Shoe, TinyScheme, BDC, XLisp, Schemik, SXM, and Elisp, but wrapping
fixnums aren't conformant.)  Gambit provides the full numeric tower,
and Ghu knows it is fast.

Overall I think the fixnum-bignum-flonum tower is pretty reasonable.
Bigloo is a decently fast compiler that provides this, as do the
interpreters Scheme 9 and Elk.
-- 
John Cowan  address@hidden  http://ccil.org/~cowan
If I have seen farther than others, it is because I was standing on
the shoulders of giants.
        --Isaac Newton



reply via email to

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