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

Reply via email to