@@ -13,7 +13,7 @@ module StreamDOps where
1313 -- (Monad, Int, (+), ($), (.), return, fmap, even, (>), (<=),
1414 -- subtract, undefined, Maybe(..))
1515import Prelude
16− (Monad, Int, (+), (.), return, (>),
16+ (Monad, Int, (+), (.), return, (>), even, (<=),
1717 Maybe(..))
1818
1919import qualified Streamly.Streams.StreamD as S
@@ -26,14 +26,14 @@ maxValue = value + 1000
2626-- Benchmark ops
2727-------------------------------------------------------------------------------
2828
29−{-
30−{-# INLINE scan #-}
29+-- {-# INLINE scan #-}
3130{-# INLINE map #-}
3231{-# INLINE filterEven #-}
3332{-# INLINE filterAllOut #-}
3433{-# INLINE filterAllIn #-}
3534{-# INLINE takeOne #-}
3635{-# INLINE takeAll #-}
36+{-
3737{-# INLINE takeWhileTrue #-}
3838{-# INLINE dropAll #-}
3939{-# INLINE dropWhileTrue #-}
@@ -42,15 +42,18 @@ maxValue = value + 1000
4242{-# INLINE composeAllInFilters #-}
4343{-# INLINE composeAllOutFilters #-}
4444{-# INLINE composeMapAllInFilter #-}
45−scan, map, filterEven, filterAllOut,
46− filterAllIn, takeOne, takeAll, takeWhileTrue, dropAll, dropWhileTrue, zip,
47− concat, composeAllInFilters, composeAllOutFilters,
48− composeMapAllInFilter
45+-}
46+map, filterEven, filterAllOut,
47+ filterAllIn, takeOne, takeAll -- takeWhileTrue, dropAll, dropWhileTrue, zip,
48+ -- concat, composeAllInFilters, composeAllOutFilters,
49+ -- composeMapAllInFilter
4950 :: Monad m
5051 => Stream m Int -> m ()
5152
53+{-
5254{-# INLINE composeMapM #-}
5355composeMapM :: S.MonadAsync m => Stream m Int -> m ()
56+-}
5457
5558{-# INLINE toList #-}
5659toList :: Monad m => Stream m Int -> m [Int]
@@ -58,9 +61,6 @@ toList :: Monad m => Stream m Int -> m [Int]
5861foldl :: Monad m => Stream m Int -> m Int
5962{-# INLINE last #-}
6063last :: Monad m => Stream m Int -> m (Maybe Int)
61−{-# INLINE zipAsync #-}
62−zipAsync :: S.MonadAsync m => Stream m Int -> m ()
63−-}
6464
6565{-# INLINE toNull #-}
6666{-# INLINE mapM #-}
@@ -98,12 +98,6 @@ sourceFromEnum n = S.enumFromStepN n 1 value
9898sourceFromFoldable :: Monad m => Int -> Stream m Int
9999sourceFromFoldable n = S.fromList [n..n+value]
100100
101−{-
102−{-# INLINE sourceFromFoldableM #-}
103−sourceFromFoldableM :: (S.IsStream t, S.MonadAsync m) => Int -> t m Int
104−sourceFromFoldableM n = S.fromFoldableM (Prelude.fmap return [n..n+value])
105−-}
106−
107101{-# INLINE source #-}
108102source :: Monad m => Int -> Stream m Int
109103source n = sourceUnfoldrM n
@@ -117,11 +111,9 @@ runStream :: Monad m => Stream m a -> m ()
117111runStream = S.runStream
118112
119113toNull = runStream
120−{-
121114toList = S.toList
122115foldl = S.foldl' (+) 0
123116last = S.last
124−-}
125117
126118-------------------------------------------------------------------------------
127119-- Transformation
@@ -131,17 +123,15 @@ last = S.last
131123transform :: Monad m => Stream m a -> m ()
132124transform = runStream
133125
134−{-
135−scan = transform . S.scanl' (+) 0
136−map = transform . fmap (+1)
137−-}
126+-- scan = transform . S.scanl' (+) 0
127+map = transform . S.map (+1)
138128mapM = transform . S.mapM return
139−{-
140129filterEven = transform . S.filter even
141130filterAllOut = transform . S.filter (> maxValue)
142131filterAllIn = transform . S.filter (<= maxValue)
143132takeOne = transform . S.take 1
144133takeAll = transform . S.take maxValue
134+{-
145135takeWhileTrue = transform . S.takeWhile (<= maxValue)
146136dropAll = transform . S.drop maxValue
147137dropWhileTrue = transform . S.dropWhile (<= maxValue)