Saturday, August 15, 2009

Status update: New Integer implementation.

We've finally gotten around to replacing our Integer type with a real bignum implementation. The bignum code was written by Isaac Dupree in wonderfully pure Haskell, and it was a snug fit for our needs. After stripping the Prelude dependency and hooking it up to the Integer interface, it worked without a hitch.

Let's try it out:


david@desktop:lhc$ cat HelloWorld.hs
module Main where
main = do print (2^150)
print (3*10^13*299792458)
david@desktop:lhc$ ./HelloWorld
1427247692705959881058285969449495136382746624
8993773740000000000000