[Haskell-cafe] GHC vs GCC vs JHC

Roman Leshchinskiy rl at cse.unsw.edu.au
Sat Mar 27 21:28:04 EDT 2010


On 28/03/2010, at 09:47, Lennart Augustsson wrote:

> It's important to switch from mod to rem.  This can be done by a
> simple abstract interpretation.

Also, changing the definition of rem from

    a `rem` b
     | b == 0                     = divZeroError
     | a == minBound && b == (-1) = overflowError
     | otherwise                  =  a `remInt` b

to

    a `rem` b
     | b == 0                     = divZeroError
     | b == (-1) && a == minBound = overflowError
     | otherwise                  =  a `remInt` b

speeds up the GHC version by about 20%. Figuring out why is left as an exercise to the reader :-)

Roman 




More information about the Haskell-Cafe mailing list