@@ -277,6 +277,10 @@ mapMWithInput size start =
277 (UF.mapMWithInput (\a b -> return $ a + b))
277 (UF.mapMWithInput (\a b -> return $ a + b))
280+-------------------------------------------------------------------------------
282+-------------------------------------------------------------------------------
280{-# INLINE takeWhileM #-}
284{-# INLINE takeWhileM #-}
281takeWhileM :: Monad m => Int -> Int -> m ()
285takeWhileM :: Monad m => Int -> Int -> m ()
282takeWhileM size start =
286takeWhileM size start =
@@ -462,7 +466,14 @@ o_1_space_transformation size =
462 [ benchIO "map" $ map size
466 [ benchIO "map" $ map size
463 , benchIO "mapM" $ mapM size
467 , benchIO "mapM" $ mapM size
464 , benchIO "mapMWithInput" $ mapMWithInput size
468 , benchIO "mapMWithInput" $ mapMWithInput size
472+o_1_space_filtering :: Int -> [Benchmark]
473+o_1_space_filtering size =
465− , benchIO "takeWhileM" $ takeWhileM size
476+ [ benchIO "takeWhileM" $ takeWhileM size
466 , benchIO "takeWhile" $ takeWhile size
477 , benchIO "takeWhile" $ takeWhile size
467 , benchIO "take" $ take size
478 , benchIO "take" $ take size
468 , benchIO "filter" $ filter size
479 , benchIO "filter" $ filter size
@@ -532,6 +543,7 @@ main = do
532 [ o_1_space_transformation_input size
543 [ o_1_space_transformation_input size
533 , o_1_space_generation size
544 , o_1_space_generation size
534 , o_1_space_transformation size
545 , o_1_space_transformation size
546+ , o_1_space_filtering size
535 , o_1_space_zip size
547 , o_1_space_zip size
536 , o_1_space_nested size
548 , o_1_space_nested size