[commit: parallel] master: INLINEs to improve fusion (cf4f2ea)
Simon Marlow
marlowsd at gmail.com
Tue Apr 5 13:35:35 CEST 2011
Repository : ssh://darcs.haskell.org//srv/darcs/packages/parallel
On branch : master
http://hackage.haskell.org/trac/ghc/changeset/cf4f2ea38ebf97753a2c2f4dd91d55ef57d0de4e
>---------------------------------------------------------------
commit cf4f2ea38ebf97753a2c2f4dd91d55ef57d0de4e
Author: Simon Marlow <marlowsd at gmail.com>
Date: Tue Apr 5 10:23:30 2011 +0100
INLINEs to improve fusion
>---------------------------------------------------------------
Control/Parallel/Strategies.hs | 7 ++-----
1 files changed, 2 insertions(+), 5 deletions(-)
diff --git a/Control/Parallel/Strategies.hs b/Control/Parallel/Strategies.hs
index c6d9bd7..a24ebe7 100644
--- a/Control/Parallel/Strategies.hs
+++ b/Control/Parallel/Strategies.hs
@@ -353,15 +353,12 @@ rpar x = x `par` return x
-- according to the given strategy.
evalTraversable :: Traversable t => Strategy a -> Strategy (t a)
evalTraversable = traverse
+{-# INLINE evalTraversable #-}
-- | Like 'evalTraversable' but evaluates all elements in parallel.
parTraversable :: Traversable t => Strategy a -> Strategy (t a)
parTraversable strat = evalTraversable (rpar `dot` strat)
-
-{-# SPECIALISE evalTraversable :: Strategy a -> Strategy (Maybe a) #-}
-{-# SPECIALISE parTraversable :: Strategy a -> Strategy (Maybe a) #-}
-{-# SPECIALISE evalTraversable :: Strategy a -> Strategy [a] #-}
-{-# SPECIALISE parTraversable :: Strategy a -> Strategy [a] #-}
+{-# INLINE parTraversable #-}
-- --------------------------------------------------------------------------
-- Strategies for lists
More information about the Cvs-libraries
mailing list