on 116a5a8 help sign in
27 lines 494 B history raw
1{-# RULES
2"fold/build" foldr k z (build g) = g k z
3 #-}
5{-# RULES
6"fusable/aux"
7 fusable x (aux y) = faux x y
8 #-}
10{-# RULES
11"map/map"
12 map f
13 (map g xs) = map
14 (f . g)
15 xs
16 #-}
18{-# RULES
19"++" xs ++ ys = augment (\c n -> foldr c n xs) ys
20"concat" xs `concat` ys = augment (\c n -> foldr c n xs) ys
21 #-}
23{-# RULES
24"++" xs ++ ys = augment (\c n -> foldr c n xs) ys;
25"concat" xs `concat` ys = augment (\c n -> foldr c n xs) ys;
26"map/Double" fmap f xs = foldr (++) f xs
27 #-}