on master help sign in
Rename intersperse ops (#2210)
commitc01c7e2d92f0efadfeb59129c7599b394703cc76 authorRanjeet Ranjan <ranjeetr@composewell.com> dateFri 6 Jan 2023, 16:45 (4 years ago) parentf7f264f
8 files changed+89−89
core/src/Streamly/Internal/Console/Stdio.hs+2−2 core/src/Streamly/Internal/Data/Stream/Bottom.hs+1−1 core/src/Streamly/Internal/Data/Stream/Expand.hs+4−4 core/src/Streamly/Internal/Data/Stream/StreamD/Transform.hs+12−12 core/src/Streamly/Internal/Data/Stream/Transform.hs+33−33 src/Streamly/Internal/Data/Stream/IsStream/Common.hs+1−1 src/Streamly/Internal/Data/Stream/IsStream/Expand.hs+5−5 src/Streamly/Internal/Data/Stream/IsStream/Transform.hs+31−31
core/src/Streamly/Internal/Console/Stdio.hs+2−2
@@ -52,7 +52,7 @@ import Streamly.Internal.Data.Unfold (Unfold)
5252import Streamly.Internal.Data.Fold (Fold)
5353
5454import qualified Streamly.Internal.Data.Array as Array
55−import qualified Streamly.Internal.Data.Stream as Stream (intersperseSuffix)
55+import qualified Streamly.Internal.Data.Stream as Stream (intersperseMSuffix)
5656import qualified Streamly.Internal.Data.Unfold as Unfold
5757import qualified Streamly.Internal.FileSystem.Handle as Handle
5858import qualified Streamly.Internal.Unicode.Stream as Unicode
@@ -223,5 +223,5 @@ putStrings = putStringsWith Unicode.encodeUtf8
223223putStringsLn :: MonadIO m => Stream m String -> m ()
224224putStringsLn =
225225 putChunks
226− . Stream.intersperseSuffix (return $ Array.fromList [10])
226+ . Stream.intersperseMSuffix (return $ Array.fromList [10])
227227 . Unicode.encodeStrings Unicode.encodeUtf8
core/src/Streamly/Internal/Data/Stream/Bottom.hs+1−1
@@ -495,7 +495,7 @@ findIndices p m = fromStreamD $ D.findIndices p (toStreamD m)
495495-- Transformation by Inserting
496496------------------------------------------------------------------------------
497497
498−-- intersperseM = intersperseBySpan 1
498+-- intersperseM = intersperseMWith 1
499499
500500-- | Insert an effect and its output before consuming an element of a stream
501501-- except the first one.
core/src/Streamly/Internal/Data/Stream/Expand.hs+4−4
@@ -550,10 +550,10 @@ gintercalateSuffix unf1 str1 unf2 str2 =
550550
551551-- > intercalateSuffix unf seed str = gintercalateSuffix unf str unf (repeatM seed)
552552
553−-- | 'intersperseSuffix' followed by unfold and concat.
553+-- | 'intersperseMSuffix' followed by unfold and concat.
554554--
555−-- >>> intercalateSuffix u a = Stream.unfoldMany u . Stream.intersperseSuffix a
556−-- >>> intersperseSuffix = Stream.intercalateSuffix Unfold.identity
555+-- >>> intercalateSuffix u a = Stream.unfoldMany u . Stream.intersperseMSuffix a
556+-- >>> intersperseMSuffix = Stream.intercalateSuffix Unfold.identity
557557-- >>> unlines = Stream.intercalateSuffix Unfold.fromList "\n"
558558--
559559-- >>> input = Stream.fromList ["abc", "def", "ghi"]
@@ -564,7 +564,7 @@ gintercalateSuffix unf1 str1 unf2 str2 =
564564intercalateSuffix :: Monad m
565565 => Unfold m b c -> b -> Stream m b -> Stream m c
566566intercalateSuffix unf seed str = fromStreamD $ D.unfoldMany unf
567− $ D.intersperseSuffix (return seed) (toStreamD str)
567+ $ D.intersperseMSuffix (return seed) (toStreamD str)
568568
569569------------------------------------------------------------------------------
570570-- Combine N Streams - concatMap
core/src/Streamly/Internal/Data/Stream/StreamD/Transform.hs+12−12
@@ -85,12 +85,12 @@ module Streamly.Internal.Data.Stream.StreamD.Transform
8585 , insertBy
8686 , intersperse
8787 , intersperseM
88− , intersperseSuffix
89− , intersperseSuffixBySpan
88+ , intersperseMSuffix
89+ , intersperseMSuffixWith
9090
9191 -- * Inserting Side Effects
9292 , intersperseM_
93− , intersperseSuffix_
93+ , intersperseMSuffix_
9494
9595 -- * Reordering
9696 -- | Produce strictly the same set but reordered.
@@ -846,9 +846,9 @@ data SuffixState s a
846846 | SuffixSuffix s
847847 | SuffixYield a (SuffixState s a)
848848
849−{-# INLINE_NORMAL intersperseSuffix #-}
850−intersperseSuffix :: forall m a. Monad m => m a -> Stream m a -> Stream m a
851−intersperseSuffix action (Stream step state) = Stream step' (SuffixElem state)
849+{-# INLINE_NORMAL intersperseMSuffix #-}
850+intersperseMSuffix :: forall m a. Monad m => m a -> Stream m a -> Stream m a
851+intersperseMSuffix action (Stream step state) = Stream step' (SuffixElem state)
852852 where
853853 {-# INLINE_LATE step' #-}
854854 step' gst (SuffixElem st) = do
@@ -863,9 +863,9 @@ intersperseSuffix action (Stream step state) = Stream step' (SuffixElem state)
863863
864864 step' _ (SuffixYield x next) = return $ Yield x next
865865
866−{-# INLINE_NORMAL intersperseSuffix_ #-}
867−intersperseSuffix_ :: Monad m => m b -> Stream m a -> Stream m a
868−intersperseSuffix_ m (Stream step1 state1) = Stream step (Left state1)
866+{-# INLINE_NORMAL intersperseMSuffix_ #-}
867+intersperseMSuffix_ :: Monad m => m b -> Stream m a -> Stream m a
868+intersperseMSuffix_ m (Stream step1 state1) = Stream step (Left state1)
869869 where
870870 {-# INLINE_LATE step #-}
871871 step gst (Left st) = do
@@ -885,10 +885,10 @@ data SuffixSpanState s a
885885 | SuffixSpanStop
886886
887887-- | intersperse after every n items
888−{-# INLINE_NORMAL intersperseSuffixBySpan #-}
889−intersperseSuffixBySpan :: forall m a. Monad m
888+{-# INLINE_NORMAL intersperseMSuffixWith #-}
889+intersperseMSuffixWith :: forall m a. Monad m
890890 => Int -> m a -> Stream m a -> Stream m a
891−intersperseSuffixBySpan n action (Stream step state) =
891+intersperseMSuffixWith n action (Stream step state) =
892892 Stream step' (SuffixSpanElem state n)
893893 where
894894 {-# INLINE_LATE step' #-}
core/src/Streamly/Internal/Data/Stream/Transform.hs+33−33
@@ -101,10 +101,10 @@ module Streamly.Internal.Data.Stream.Transform
101101 -- Element agnostic (Opposite of sampling)
102102 , intersperse
103103 , intersperseM -- XXX naming
104− , intersperseBySpan
104+ , intersperseMWith
105105
106− , intersperseSuffix
107− , intersperseSuffixBySpan
106+ , intersperseMSuffix
107+ , intersperseMSuffixWith
108108
109109 -- , interspersePrefix
110110 -- , interspersePrefixBySpan
@@ -112,9 +112,9 @@ module Streamly.Internal.Data.Stream.Transform
112112 -- * Inserting Side Effects/Time
113113 , intersperseM_ -- XXX naming
114114 , delay
115− , intersperseSuffix_
115+ , intersperseMSuffix_
116116 , delayPost
117− , interspersePrefix_
117+ , intersperseMPrefix_
118118 , delayPre
119119
120120 -- * Element Aware Insertion
@@ -325,7 +325,7 @@ trace f = mapM (\x -> void (f x) >> return x)
325325-- "got here"
326326-- "got here"
327327--
328−-- Same as 'interspersePrefix_' but always serial.
328+-- Same as 'intersperseMPrefix_' but always serial.
329329--
330330-- See also: 'trace'
331331--
@@ -680,72 +680,72 @@ intersperseM_ m = fromStreamD . D.intersperseM_ m . toStreamD
680680-- elements.
681681--
682682-- >> input = Stream.fromList "hello"
683−-- >> Stream.fold Fold.toList $ Stream.intersperseBySpan 2 (return ',') input
683+-- >> Stream.fold Fold.toList $ Stream.intersperseMWith 2 (return ',') input
684684-- "he,ll,o"
685685--
686686-- /Unimplemented/
687−{-# INLINE intersperseBySpan #-}
688−intersperseBySpan :: -- Monad m =>
687+{-# INLINE intersperseMWith #-}
688+intersperseMWith :: -- Monad m =>
689689 Int -> m a -> Stream m a -> Stream m a
690−intersperseBySpan _n _f _xs = undefined
690+intersperseMWith _n _f _xs = undefined
691691
692692-- | Insert an effect and its output after consuming an element of a stream.
693693--
694694-- >>> input = Stream.fromList "hello"
695−-- >>> Stream.fold Fold.toList $ Stream.trace putChar $ Stream.intersperseSuffix (putChar '.' >> return ',') input
695+-- >>> Stream.fold Fold.toList $ Stream.trace putChar $ Stream.intersperseMSuffix (putChar '.' >> return ',') input
696696-- h.,e.,l.,l.,o.,"h,e,l,l,o,"
697697--
698698-- /Pre-release/
699−{-# INLINE intersperseSuffix #-}
700−intersperseSuffix :: Monad m => m a -> Stream m a -> Stream m a
701−intersperseSuffix m = fromStreamD . D.intersperseSuffix m . toStreamD
699+{-# INLINE intersperseMSuffix #-}
700+intersperseMSuffix :: Monad m => m a -> Stream m a -> Stream m a
701+intersperseMSuffix m = fromStreamD . D.intersperseMSuffix m . toStreamD
702702
703703-- | Insert a side effect after consuming an element of a stream.
704704--
705705-- >>> input = Stream.fromList "hello"
706−-- >>> Stream.fold Fold.toList $ Stream.intersperseSuffix_ (threadDelay 1000000) input
706+-- >>> Stream.fold Fold.toList $ Stream.intersperseMSuffix_ (threadDelay 1000000) input
707707-- "hello"
708708--
709709-- /Pre-release/
710710--
711−{-# INLINE intersperseSuffix_ #-}
712−intersperseSuffix_ :: Monad m => m b -> Stream m a -> Stream m a
713−intersperseSuffix_ m = fromStreamD . D.intersperseSuffix_ m . toStreamD
711+{-# INLINE intersperseMSuffix_ #-}
712+intersperseMSuffix_ :: Monad m => m b -> Stream m a -> Stream m a
713+intersperseMSuffix_ m = fromStreamD . D.intersperseMSuffix_ m . toStreamD
714714
715715-- XXX Use an offset argument, like tapOffsetEvery
716716
717−-- | Like 'intersperseSuffix' but intersperses an effectful action into the
717+-- | Like 'intersperseMSuffix' but intersperses an effectful action into the
718718-- input stream after every @n@ elements and after the last element.
719719--
720720-- >>> input = Stream.fromList "hello"
721−-- >>> Stream.fold Fold.toList $ Stream.intersperseSuffixBySpan 2 (return ',') input
721+-- >>> Stream.fold Fold.toList $ Stream.intersperseMSuffixWith 2 (return ',') input
722722-- "he,ll,o,"
723723--
724724-- /Pre-release/
725725--
726−{-# INLINE intersperseSuffixBySpan #-}
727−intersperseSuffixBySpan :: Monad m
726+{-# INLINE intersperseMSuffixWith #-}
727+intersperseMSuffixWith :: Monad m
728728 => Int -> m a -> Stream m a -> Stream m a
729−intersperseSuffixBySpan n eff =
730− fromStreamD . D.intersperseSuffixBySpan n eff . toStreamD
729+intersperseMSuffixWith n eff =
730+ fromStreamD . D.intersperseMSuffixWith n eff . toStreamD
731731
732732-- | Insert a side effect before consuming an element of a stream.
733733--
734734-- Definition:
735735--
736−-- >>> interspersePrefix_ m = Stream.mapM (\x -> void m >> return x)
736+-- >>> intersperseMPrefix_ m = Stream.mapM (\x -> void m >> return x)
737737--
738738-- >>> input = Stream.fromList "hello"
739−-- >>> Stream.fold Fold.toList $ Stream.trace putChar $ Stream.interspersePrefix_ (putChar '.' >> return ',') input
739+-- >>> Stream.fold Fold.toList $ Stream.trace putChar $ Stream.intersperseMPrefix_ (putChar '.' >> return ',') input
740740-- .h.e.l.l.o"hello"
741741--
742742-- Same as 'trace_'.
743743--
744744-- /Pre-release/
745745--
746−{-# INLINE interspersePrefix_ #-}
747−interspersePrefix_ :: Monad m => m b -> Stream m a -> Stream m a
748−interspersePrefix_ m = mapM (\x -> void m >> return x)
746+{-# INLINE intersperseMPrefix_ #-}
747+intersperseMPrefix_ :: Monad m => m b -> Stream m a -> Stream m a
748+intersperseMPrefix_ m = mapM (\x -> void m >> return x)
749749
750750------------------------------------------------------------------------------
751751-- Inserting Time
@@ -783,7 +783,7 @@ delay = intersperseM_ . sleep
783783-- Definition:
784784--
785785-- >>> sleep n = liftIO $ threadDelay $ round $ n * 1000000
786−-- >>> delayPost = Stream.intersperseSuffix_ . sleep
786+-- >>> delayPost = Stream.intersperseMSuffix_ . sleep
787787--
788788-- Example:
789789--
@@ -797,7 +797,7 @@ delay = intersperseM_ . sleep
797797--
798798{-# INLINE delayPost #-}
799799delayPost :: MonadIO m => Double -> Stream m a -> Stream m a
800−delayPost = intersperseSuffix_ . sleep
800+delayPost n = intersperseMSuffix_ $ liftIO $ threadDelay $ round $ n * 1000000
801801
802802-- | Introduce a delay of specified seconds before consuming an element of a
803803-- stream.
@@ -805,7 +805,7 @@ delayPost = intersperseSuffix_ . sleep
805805-- Definition:
806806--
807807-- >>> sleep n = liftIO $ threadDelay $ round $ n * 1000000
808−-- >>> delayPre = Stream.interspersePrefix_ . sleep
808+-- >>> delayPre = Stream.intersperseMPrefix_. sleep
809809--
810810-- Example:
811811--
@@ -819,7 +819,7 @@ delayPost = intersperseSuffix_ . sleep
819819--
820820{-# INLINE delayPre #-}
821821delayPre :: MonadIO m => Double -> Stream m a -> Stream m a
822−delayPre = interspersePrefix_ . sleep
822+delayPre = intersperseMPrefix_. sleep
823823
824824------------------------------------------------------------------------------
825825-- Reorder in sequence
src/Streamly/Internal/Data/Stream/IsStream/Common.hs+1−1
@@ -438,7 +438,7 @@ findIndices p m = fromStreamD $ D.findIndices p (toStreamD m)
438438-- Transformation by Inserting
439439------------------------------------------------------------------------------
440440
441−-- intersperseM = intersperseBySpan 1
441+-- intersperseM = intersperseMWith 1
442442
443443-- | Insert an effect and its output before consuming an element of a stream
444444-- except the first one.
src/Streamly/Internal/Data/Stream/IsStream/Expand.hs+5−5
@@ -182,7 +182,7 @@ import qualified Streamly.Internal.Data.Stream.StreamD as D
182182 (append, interleave, interleaveSuffix, interleaveInfix, interleaveMin
183183 , roundRobin, mergeByM, unfoldMany, unfoldManyInterleave, intersperse
184184 , unfoldManyRoundRobin, interpose, interposeSuffix, gintercalate
185− , gintercalateSuffix, intersperseSuffix)
185+ , gintercalateSuffix, intersperseMSuffix)
186186import qualified Streamly.Internal.Data.Stream.StreamK as K (mergeBy, mergeByM)
187187import qualified Streamly.Internal.Data.Stream.StreamK.Type as K
188188 (interleave, serial, concatPairsWith)
@@ -935,10 +935,10 @@ gintercalateSuffix unf1 str1 unf2 str2 =
935935
936936-- > intercalateSuffix unf seed str = gintercalateSuffix unf str unf (repeatM seed)
937937--
938−-- | 'intersperseSuffix' followed by unfold and concat.
938+-- | 'intersperseMSuffix' followed by unfold and concat.
939939--
940−-- > intercalateSuffix unf a str = unfoldMany unf $ intersperseSuffix a str
941−-- > intersperseSuffix = intercalateSuffix (Unfold.function id)
940+-- > intercalateSuffix unf a str = unfoldMany unf $ intersperseMSuffix a str
941+-- > intersperseMSuffix = intercalateSuffix (Unfold.function id)
942942-- > unlines = intercalateSuffix Unfold.fromList "\n"
943943--
944944-- >>> Stream.toList $ Stream.intercalateSuffix Unfold.fromList "\n" $ Stream.fromList ["abc", "def", "ghi"]
@@ -949,7 +949,7 @@ gintercalateSuffix unf1 str1 unf2 str2 =
949949intercalateSuffix :: (IsStream t, Monad m)
950950 => Unfold m b c -> b -> t m b -> t m c
951951intercalateSuffix unf seed str = fromStreamD $ D.unfoldMany unf
952− $ D.intersperseSuffix (return seed) (toStreamD str)
952+ $ D.intersperseMSuffix (return seed) (toStreamD str)
953953
954954------------------------------------------------------------------------------
955955-- Combine N Streams - concatMap
src/Streamly/Internal/Data/Stream/IsStream/Transform.hs+31−31
@@ -109,10 +109,10 @@ module Streamly.Internal.Data.Stream.IsStream.Transform {-# DEPRECATED "Please u
109109 -- Element agnostic (Opposite of sampling)
110110 , intersperse
111111 , intersperseM -- XXX naming
112− , intersperseBySpan
112+ , intersperseMWith
113113
114− , intersperseSuffix
115− , intersperseSuffixBySpan
114+ , intersperseMSuffix
115+ , intersperseMSuffixWith
116116 , interjectSuffix
117117
118118 -- , interspersePrefix
@@ -121,9 +121,9 @@ module Streamly.Internal.Data.Stream.IsStream.Transform {-# DEPRECATED "Please u
121121 -- * Inserting Side Effects/Time
122122 , intersperseM_ -- XXX naming
123123 , delay
124− , intersperseSuffix_
124+ , intersperseMSuffix_
125125 , delayPost
126− , interspersePrefix_
126+ , intersperseMPrefix_
127127 , delayPre
128128
129129 -- * Element Aware Insertion
@@ -261,8 +261,8 @@ import qualified Streamly.Internal.Data.Stream.StreamD as D
261261 , scanMany, postscanOnce, scanlx', scanlM', scanl', postscanl', prescanl'
262262 , prescanlM', scanl1M', scanl1', filter, filterM, uniq, deleteBy, takeWhileM
263263 , dropWhile, dropWhileM, insertBy, intersperse
264− , intersperseM_, intersperseSuffix, intersperseSuffix_
265− , intersperseSuffixBySpan, indexed, indexedR, rollingMap, rollingMapM
264+ , intersperseM_, intersperseMSuffix, intersperseMSuffix_
265+ , intersperseMSuffixWith, indexed, indexedR, rollingMap, rollingMapM
266266 , rollingMap2, mapMaybe, mapMaybeM)
267267import qualified Streamly.Internal.Data.Stream.StreamK.Type as K
268268 (foldrS, foldrSShared, mapMWith)
@@ -610,7 +610,7 @@ trace f = mapM (\x -> void (f x) >> return x)
610610--
611611-- @
612612--
613−-- Same as 'interspersePrefix_' but always serial.
613+-- Same as 'intersperseMPrefix_' but always serial.
614614--
615615-- See also: 'trace'
616616--
@@ -1165,60 +1165,60 @@ intersperseM_ m = fromStreamD . D.intersperseM_ m . toStreamD
11651165-- elements.
11661166--
11671167-- @
1168−-- > Stream.toList $ Stream.intersperseBySpan 2 (return ',') $ Stream.fromList "hello"
1168+-- > Stream.toList $ Stream.intersperseMWith 2 (return ',') $ Stream.fromList "hello"
11691169-- "he,ll,o"
11701170--
11711171-- @
11721172--
11731173-- /Unimplemented/
1174−{-# INLINE intersperseBySpan #-}
1175−intersperseBySpan :: -- IsStream t =>
1174+{-# INLINE intersperseMWith #-}
1175+intersperseMWith :: -- IsStream t =>
11761176 Int -> m a -> t m a -> t m a
1177−intersperseBySpan _n _f _xs = undefined
1177+intersperseMWith _n _f _xs = undefined
11781178
11791179-- | Insert an effect and its output after consuming an element of a stream.
11801180--
1181−-- >>> Stream.toList $ Stream.trace putChar $ intersperseSuffix (putChar '.' >> return ',') $ Stream.fromList "hello"
1181+-- >>> Stream.toList $ Stream.trace putChar $ intersperseMSuffix (putChar '.' >> return ',') $ Stream.fromList "hello"
11821182-- h.,e.,l.,l.,o.,"h,e,l,l,o,"
11831183--
11841184-- /Pre-release/
1185−{-# INLINE intersperseSuffix #-}
1186−intersperseSuffix :: (IsStream t, Monad m) => m a -> t m a -> t m a
1187−intersperseSuffix m = fromStreamD . D.intersperseSuffix m . toStreamD
1185+{-# INLINE intersperseMSuffix #-}
1186+intersperseMSuffix :: (IsStream t, Monad m) => m a -> t m a -> t m a
1187+intersperseMSuffix m = fromStreamD . D.intersperseMSuffix m . toStreamD
11881188
11891189-- | Insert a side effect after consuming an element of a stream.
11901190--
11911191-- @
1192−-- >>> Stream.mapM_ putChar $ Stream.intersperseSuffix_ (threadDelay 1000000) $ Stream.fromList "hello"
1192+-- >>> Stream.mapM_ putChar $ Stream.intersperseMSuffix_ (threadDelay 1000000) $ Stream.fromList "hello"
11931193-- hello
11941194--
11951195-- @
11961196--
11971197-- /Pre-release/
11981198--
1199−{-# INLINE intersperseSuffix_ #-}
1200−intersperseSuffix_ :: (IsStream t, Monad m) => m b -> t m a -> t m a
1201−intersperseSuffix_ m = fromStreamD . D.intersperseSuffix_ m . toStreamD
1199+{-# INLINE intersperseMSuffix_ #-}
1200+intersperseMSuffix_ :: (IsStream t, Monad m) => m b -> t m a -> t m a
1201+intersperseMSuffix_ m = fromStreamD . D.intersperseMSuffix_ m . toStreamD
12021202
12031203-- XXX Use an offset argument, like tapOffsetEvery
12041204--
1205−-- | Like 'intersperseSuffix' but intersperses an effectful action into the
1205+-- | Like 'intersperseMSuffix' but intersperses an effectful action into the
12061206-- input stream after every @n@ elements and after the last element.
12071207--
1208−-- >>> Stream.toList $ Stream.intersperseSuffixBySpan 2 (return ',') $ Stream.fromList "hello"
1208+-- >>> Stream.toList $ Stream.intersperseMSuffixWith 2 (return ',') $ Stream.fromList "hello"
12091209-- "he,ll,o,"
12101210--
12111211-- /Pre-release/
12121212--
1213−{-# INLINE intersperseSuffixBySpan #-}
1214−intersperseSuffixBySpan :: (IsStream t, Monad m)
1213+{-# INLINE intersperseMSuffixWith #-}
1214+intersperseMSuffixWith :: (IsStream t, Monad m)
12151215 => Int -> m a -> t m a -> t m a
1216−intersperseSuffixBySpan n eff =
1217− fromStreamD . D.intersperseSuffixBySpan n eff . toStreamD
1216+intersperseMSuffixWith n eff =
1217+ fromStreamD . D.intersperseMSuffixWith n eff . toStreamD
12181218
12191219-- | Insert a side effect before consuming an element of a stream.
12201220--
1221−-- >>> Stream.toList $ Stream.trace putChar $ Stream.interspersePrefix_ (putChar '.' >> return ',') $ Stream.fromList "hello"
1221+-- >>> Stream.toList $ Stream.trace putChar $ Stream.intersperseMPrefix_ (putChar '.' >> return ',') $ Stream.fromList "hello"
12221222-- .h.e.l.l.o"hello"
12231223--
12241224-- Same as 'trace_' but may be concurrent.
@@ -1227,9 +1227,9 @@ intersperseSuffixBySpan n eff =
12271227--
12281228-- /Pre-release/
12291229--
1230−{-# INLINE interspersePrefix_ #-}
1231−interspersePrefix_ :: (IsStream t, MonadAsync m) => m b -> t m a -> t m a
1232−interspersePrefix_ m = mapM (\x -> void m >> return x)
1230+{-# INLINE intersperseMPrefix_ #-}
1231+intersperseMPrefix_ :: (IsStream t, MonadAsync m) => m b -> t m a -> t m a
1232+intersperseMPrefix_ m = mapM (\x -> void m >> return x)
12331233
12341234------------------------------------------------------------------------------
12351235-- Inserting Time
@@ -1265,7 +1265,7 @@ delay n = intersperseM_ $ liftIO $ threadDelay $ round $ n * 1000000
12651265--
12661266{-# INLINE delayPost #-}
12671267delayPost :: (IsStream t, MonadIO m) => Double -> t m a -> t m a
1268−delayPost n = intersperseSuffix_ $ liftIO $ threadDelay $ round $ n * 1000000
1268+delayPost n = intersperseMSuffix_ $ liftIO $ threadDelay $ round $ n * 1000000
12691269
12701270-- Note: delay must be serial, that's why 'trace_' is used.
12711271--