On 29/03/2010, at 02:27, Lennart Augustsson wrote: > Does anything change if you swap the first two rhss?
No, not as far as I can tell. > > On Sun, Mar 28, 2010 at 1:28 AM, Roman Leshchinskiy <r...@cse.unsw.edu.au> > wrote: >> 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 >> >> >> _______________________________________________ >> Haskell-Cafe mailing list >> Haskell-Cafe@haskell.org >> http://www.haskell.org/mailman/listinfo/haskell-cafe >> _______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe