Repository : ssh://darcs.haskell.org//srv/darcs/packages/base On branch : master
http://hackage.haskell.org/trac/ghc/changeset/b7c8017ac1dfb34deb4791d1a719f6a7d165a5a1 >--------------------------------------------------------------- commit b7c8017ac1dfb34deb4791d1a719f6a7d165a5a1 Author: Simon Peyton Jones <[email protected]> Date: Mon Aug 13 17:32:23 2012 +0100 Comments ony >--------------------------------------------------------------- GHC/Base.lhs | 8 ++++++-- 1 files changed, 6 insertions(+), 2 deletions(-) diff --git a/GHC/Base.lhs b/GHC/Base.lhs index ce47cd0..42978b1 100644 --- a/GHC/Base.lhs +++ b/GHC/Base.lhs @@ -363,8 +363,10 @@ augment g xs = g (:) xs -- > map f [x1, x2, ..., xn] == [f x1, f x2, ..., f xn] -- > map f [x1, x2, ...] == [f x1, f x2, ...] -{-# NOINLINE [1] map #-} map :: (a -> b) -> [a] -> [b] +{-# NOINLINE [1] map #-} -- We want the RULE to fire first. + -- It's recursive, so won't inline anyway, + -- but saying so is more explicit map _ [] = [] map f (x:xs) = f x : map f xs @@ -410,8 +412,10 @@ mapFB c f = \x ys -> c (f x) ys -- -- If the first list is not finite, the result is the first list. -{-# NOINLINE [1] (++) #-} (++) :: [a] -> [a] -> [a] +{-# NOINLINE [1] (++) #-} -- We want the RULE to fire first. + -- It's recursive, so won't inline anyway, + -- but saying so is more explicit (++) [] ys = ys (++) (x:xs) ys = x : xs ++ ys _______________________________________________ Cvs-libraries mailing list [email protected] http://www.haskell.org/mailman/listinfo/cvs-libraries
