@@ -219,42 +219,42 @@ main =
219219 , benchIOSink "toListRev" Ops.toListRev
220220 ]
221221 , bgroup "folds"
222− [ benchIOSink "drain" (S.runFold FL.drain)
223− , benchIOSink "sink" (S.runFold $ Sink.toFold Sink.drain)
224− , benchIOSink "last" (S.runFold FL.last)
225− , benchIOSink "length" (S.runFold FL.length)
226− , benchIOSink "sum" (S.runFold FL.sum)
227− , benchIOSink "product" (S.runFold FL.product)
228− , benchIOSink "maximumBy" (S.runFold (FL.maximumBy compare))
229− , benchIOSink "maximum" (S.runFold FL.maximum)
230− , benchIOSink "minimumBy" (S.runFold (FL.minimumBy compare))
231− , benchIOSink "minimum" (S.runFold FL.minimum)
232− , benchIOSink "mean" (\s -> S.runFold FL.mean (S.map (fromIntegral :: Int -> Double) s))
233− , benchIOSink "variance" (\s -> S.runFold FL.variance (S.map (fromIntegral :: Int -> Double) s))
234− , benchIOSink "stdDev" (\s -> S.runFold FL.stdDev (S.map (fromIntegral :: Int -> Double) s))
235−
236− , benchIOSink "mconcat" (S.runFold FL.mconcat . (S.map (Last . Just)))
237− , benchIOSink "foldMap" (S.runFold (FL.foldMap (Last . Just)))
238−
239− , benchIOSink "toList" (S.runFold FL.toList)
240− , benchIOSink "toListRevF" (S.runFold IFL.toListRevF)
241− , benchIOSink "toStream" (S.runFold IP.toStream)
242− , benchIOSink "toStreamRev" (S.runFold IP.toStreamRev)
243− , benchIOSink "writeN" (S.runFold (A.writeN Ops.value))
244−
245− , benchIOSink "index" (S.runFold (FL.index Ops.maxValue))
246− , benchIOSink "head" (S.runFold FL.head)
247− , benchIOSink "find" (S.runFold (FL.find (== Ops.maxValue)))
248− , benchIOSink "findIndex" (S.runFold (FL.findIndex (== Ops.maxValue)))
249− , benchIOSink "elemIndex" (S.runFold (FL.elemIndex Ops.maxValue))
250−
251− , benchIOSink "null" (S.runFold FL.null)
252− , benchIOSink "elem" (S.runFold (FL.elem Ops.maxValue))
253− , benchIOSink "notElem" (S.runFold (FL.notElem Ops.maxValue))
254− , benchIOSink "all" (S.runFold (FL.all (<= Ops.maxValue)))
255− , benchIOSink "any" (S.runFold (FL.any (> Ops.maxValue)))
256− , benchIOSink "and" (\s -> S.runFold FL.and (S.map (<= Ops.maxValue) s))
257− , benchIOSink "or" (\s -> S.runFold FL.or (S.map (> Ops.maxValue) s))
222+ [ benchIOSink "drain" (S.fold FL.drain)
223+ , benchIOSink "sink" (S.fold $ Sink.toFold Sink.drain)
224+ , benchIOSink "last" (S.fold FL.last)
225+ , benchIOSink "length" (S.fold FL.length)
226+ , benchIOSink "sum" (S.fold FL.sum)
227+ , benchIOSink "product" (S.fold FL.product)
228+ , benchIOSink "maximumBy" (S.fold (FL.maximumBy compare))
229+ , benchIOSink "maximum" (S.fold FL.maximum)
230+ , benchIOSink "minimumBy" (S.fold (FL.minimumBy compare))
231+ , benchIOSink "minimum" (S.fold FL.minimum)
232+ , benchIOSink "mean" (\s -> S.fold FL.mean (S.map (fromIntegral :: Int -> Double) s))
233+ , benchIOSink "variance" (\s -> S.fold FL.variance (S.map (fromIntegral :: Int -> Double) s))
234+ , benchIOSink "stdDev" (\s -> S.fold FL.stdDev (S.map (fromIntegral :: Int -> Double) s))
235+
236+ , benchIOSink "mconcat" (S.fold FL.mconcat . (S.map (Last . Just)))
237+ , benchIOSink "foldMap" (S.fold (FL.foldMap (Last . Just)))
238+
239+ , benchIOSink "toList" (S.fold FL.toList)
240+ , benchIOSink "toListRevF" (S.fold IFL.toListRevF)
241+ , benchIOSink "toStream" (S.fold IP.toStream)
242+ , benchIOSink "toStreamRev" (S.fold IP.toStreamRev)
243+ , benchIOSink "writeN" (S.fold (A.writeN Ops.value))
244+
245+ , benchIOSink "index" (S.fold (FL.index Ops.maxValue))
246+ , benchIOSink "head" (S.fold FL.head)
247+ , benchIOSink "find" (S.fold (FL.find (== Ops.maxValue)))
248+ , benchIOSink "findIndex" (S.fold (FL.findIndex (== Ops.maxValue)))
249+ , benchIOSink "elemIndex" (S.fold (FL.elemIndex Ops.maxValue))
250+
251+ , benchIOSink "null" (S.fold FL.null)
252+ , benchIOSink "elem" (S.fold (FL.elem Ops.maxValue))
253+ , benchIOSink "notElem" (S.fold (FL.notElem Ops.maxValue))
254+ , benchIOSink "all" (S.fold (FL.all (<= Ops.maxValue)))
255+ , benchIOSink "any" (S.fold (FL.any (> Ops.maxValue)))
256+ , benchIOSink "and" (\s -> S.fold FL.and (S.map (<= Ops.maxValue) s))
257+ , benchIOSink "or" (\s -> S.fold FL.or (S.map (> Ops.maxValue) s))
258258 ]
259259 , bgroup "fold-multi-stream"
260260 [ benchIOSink1 "eqBy" Ops.eqBy
@@ -264,16 +264,16 @@ main =
264264 , benchIOSink "stripPrefix" Ops.stripPrefix
265265 ]
266266 , bgroup "folds-transforms"
267− [ benchIOSink "drain" (S.runFold FL.drain)
268− , benchIOSink "lmap" (S.runFold (IFL.lmap (+1) FL.drain))
267+ [ benchIOSink "drain" (S.fold FL.drain)
268+ , benchIOSink "lmap" (S.fold (IFL.lmap (+1) FL.drain))
269269 , benchIOSink "pipe-mapM"
270− (S.runFold (IFL.transform (Pipe.mapM (\x -> return $ x + 1)) FL.drain))
270+ (S.fold (IFL.transform (Pipe.mapM (\x -> return $ x + 1)) FL.drain))
271271 ]
272272 , bgroup "folds-compositions" -- Applicative
273273 [
274− benchIOSink "all,any" (S.runFold ((,) <$> FL.all (<= Ops.maxValue)
274+ benchIOSink "all,any" (S.fold ((,) <$> FL.all (<= Ops.maxValue)
275275 <*> FL.any (> Ops.maxValue)))
276− , benchIOSink "sum,length" (S.runFold ((,) <$> FL.sum <*> FL.length))
276+ , benchIOSink "sum,length" (S.fold ((,) <$> FL.sum <*> FL.length))
277277 ]
278278 , bgroup "pipes"
279279 [ benchIOSink "mapM" (Ops.transformMapM serially 1)