[add rule for sum' Int
John Meacham <john@repetae.net>**20100729225737
 Ignore-this: 7f73d952716391ff235681a40a7b32c
] hunk ./lib/jhc/Prelude.hs 300
+--sum              =  foldl (+) 0
+--product          =  foldl (*) 1
+sum l	= sum' l 0 where
+    sum' []     a = a
+    sum' (x:xs) a = sum' xs (a+x)
+product	l = prod l 1 where
+    prod []     a = a
+    prod (x:xs) a = prod xs (a*x)
+
+sum' l	= rsum l 0 where
+    rsum []     a = a
+    rsum (x:xs) a = a `seq` rsum xs (a+x)
+
+{-# SPECIALIZE sum' :: [Int] -> Int #-}
+{-# RULES "sum/Int" forall . sum = sum' :: [Int] -> Int #-}
+