Does anything change if you swap the first two rhss?

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

Reply via email to