This is a pure Haskell implementation of the digest package.
- For random ByteStrings: does the output of digest-pure match that of digest?
Benchmarked on a Mac Mini 2010, 2.4GHz, using Data.ByteString.Lazy, best out of five.
$ time ./adler32 data
165386662
real 0m0.447s
user 0m0.150s
sys 0m0.295s
$ time ./adler32-pure data
165386662
real 0m2.224s
user 0m1.924s
sys 0m0.298s