@@ -48,34 +48,47 @@ main =
4848 , benchFold "tail" D.tail D.sourceUnfoldrM
4949 , benchIO "nullTail" D.nullTail D.sourceUnfoldrM
5050 , benchIO "headTail" D.headTail D.sourceUnfoldrM
51+ , benchFold "toList" K.toList K.sourceUnfoldrM
52+ , benchFold "fold" K.foldl K.sourceUnfoldrM
53+ , benchFold "last" K.last K.sourceUnfoldrM
5154 ]
5255 , bgroup "transformation"
53− [ benchIO "scan" (D.scan 1) D.sourceUnfoldrM
54− , benchIO "map" (D.map 1) D.sourceUnfoldrM
55− , benchIO "mapM" (D.mapM 1) D.sourceUnfoldrM
56+ [ benchIO "scan" (D.scan 1) D.sourceUnfoldrM
57+ , benchIO "map" (D.map 1) D.sourceUnfoldrM
58+ , benchIO "fmap" (D.fmap 1) D.sourceUnfoldrM
59+ , benchIO "mapM" (D.mapM 1) D.sourceUnfoldrM
60+ , benchIO "mapMaybe" (D.mapMaybe 1) D.sourceUnfoldrM
61+ , benchIO "mapMaybeM" (D.mapMaybeM 1) D.sourceUnfoldrM
5662 ]
5763 , bgroup "transformationN"
58− [ benchIO "scan" (D.scan 4) D.sourceUnfoldrM
59− , benchIO "map" (D.map 4) D.sourceUnfoldrM
60− , benchIO "mapM" (D.mapM 4) D.sourceUnfoldrM
64+ [ benchIO "scan" (D.scan 4) D.sourceUnfoldrM
65+ , benchIO "map" (D.map 4) D.sourceUnfoldrM
66+ , benchIO "fmap" (D.fmap 4) D.sourceUnfoldrM
67+ , benchIO "mapM" (D.mapM 4) D.sourceUnfoldrM
68+ , benchIO "mapMaybe" (D.mapMaybe 4) D.sourceUnfoldrM
69+ , benchIO "mapMaybeM" (D.mapMaybeM 4) D.sourceUnfoldrM
6170 ]
6271 , bgroup "filtering"
63− [ benchIO "filter-even" (D.filterEven 1) D.sourceUnfoldrM
64− , benchIO "filter-all-out" (D.filterAllOut 1) D.sourceUnfoldrM
65− , benchIO "filter-all-in" (D.filterAllIn 1) D.sourceUnfoldrM
66− , benchIO "take-all" (D.takeAll 1) D.sourceUnfoldrM
67− , benchIO "takeWhile-true" (D.takeWhileTrue 1) D.sourceUnfoldrM
68− , benchIO "drop-all" (D.dropAll 1) D.sourceUnfoldrM
69− , benchIO "dropWhile-true" (D.dropWhileTrue 1) D.sourceUnfoldrM
72+ [ benchIO "filter-even" (D.filterEven 1) D.sourceUnfoldrM
73+ , benchIO "filter-all-out" (D.filterAllOut 1) D.sourceUnfoldrM
74+ , benchIO "filter-all-in" (D.filterAllIn 1) D.sourceUnfoldrM
75+ , benchIO "take-all" (D.takeAll 1) D.sourceUnfoldrM
76+ , benchIO "takeWhile-true" (D.takeWhileTrue 1) D.sourceUnfoldrM
77+ , benchIO "drop-one" (D.dropOne 1) D.sourceUnfoldrM
78+ , benchIO "drop-all" (D.dropAll 1) D.sourceUnfoldrM
79+ , benchIO "dropWhile-true" (D.dropWhileTrue 1) D.sourceUnfoldrM
80+ , benchIO "dropWhile-false" (D.dropWhileFalse 1) D.sourceUnfoldrM
7081 ]
7182 , bgroup "filteringN"
72− [ benchIO "filter-even" (D.filterEven 4) D.sourceUnfoldrM
73− , benchIO "filter-all-out" (D.filterAllOut 4) D.sourceUnfoldrM
74− , benchIO "filter-all-in" (D.filterAllIn 4) D.sourceUnfoldrM
75− , benchIO "take-all" (D.takeAll 4) D.sourceUnfoldrM
76− , benchIO "takeWhile-true" (D.takeWhileTrue 4) D.sourceUnfoldrM
77− , benchIO "drop-all" (D.dropAll 4) D.sourceUnfoldrM
78− , benchIO "dropWhile-true" (D.dropWhileTrue 4) D.sourceUnfoldrM
83+ [ benchIO "filter-even" (D.filterEven 4) D.sourceUnfoldrM
84+ , benchIO "filter-all-out" (D.filterAllOut 4) D.sourceUnfoldrM
85+ , benchIO "filter-all-in" (D.filterAllIn 4) D.sourceUnfoldrM
86+ , benchIO "take-all" (D.takeAll 4) D.sourceUnfoldrM
87+ , benchIO "takeWhile-true" (D.takeWhileTrue 4) D.sourceUnfoldrM
88+ , benchIO "drop-one" (D.dropOne 4) D.sourceUnfoldrM
89+ , benchIO "drop-all" (D.dropAll 4) D.sourceUnfoldrM
90+ , benchIO "dropWhile-true" (D.dropWhileTrue 4) D.sourceUnfoldrM
91+ , benchIO "dropWhile-false" (D.dropWhileFalse 4) D.sourceUnfoldrM
7992 ]
8093 , benchIO "zip" D.zip D.sourceUnfoldrM
8194 , bgroup "composed"
@@ -128,22 +141,26 @@ main =
128141 -- , benchIO "concat" K.concat K.sourceUnfoldrM
129142 ]
130143 , bgroup "filtering"
131− [ benchIO "filter-even" (K.filterEven 1) K.sourceUnfoldrM
132− , benchIO "filter-all-out" (K.filterAllOut 1) K.sourceUnfoldrM
133− , benchIO "filter-all-in" (K.filterAllIn 1) K.sourceUnfoldrM
134− , benchIO "take-all" (K.takeAll 1) K.sourceUnfoldrM
135− , benchIO "takeWhile-true" (K.takeWhileTrue 1) K.sourceUnfoldrM
136− , benchIO "drop-all" (K.dropAll 1) K.sourceUnfoldrM
137− , benchIO "dropWhile-true" (K.dropWhileTrue 1) K.sourceUnfoldrM
144+ [ benchIO "filter-even" (K.filterEven 1) K.sourceUnfoldrM
145+ , benchIO "filter-all-out" (K.filterAllOut 1) K.sourceUnfoldrM
146+ , benchIO "filter-all-in" (K.filterAllIn 1) K.sourceUnfoldrM
147+ , benchIO "take-all" (K.takeAll 1) K.sourceUnfoldrM
148+ , benchIO "takeWhile-true" (K.takeWhileTrue 1) K.sourceUnfoldrM
149+ , benchIO "drop-one" (K.dropOne 1) K.sourceUnfoldrM
150+ , benchIO "drop-all" (K.dropAll 1) K.sourceUnfoldrM
151+ , benchIO "dropWhile-true" (K.dropWhileTrue 1) K.sourceUnfoldrM
152+ , benchIO "dropWhile-false" (K.dropWhileFalse 1) K.sourceUnfoldrM
138153 ]
139154 , bgroup "filteringN"
140− [ benchIO "filter-even" (K.filterEven 4) K.sourceUnfoldrM
141− , benchIO "filter-all-out" (K.filterAllOut 4) K.sourceUnfoldrM
142− , benchIO "filter-all-in" (K.filterAllIn 4) K.sourceUnfoldrM
143− , benchIO "take-all" (K.takeAll 4) K.sourceUnfoldrM
144− , benchIO "takeWhile-true" (K.takeWhileTrue 4) K.sourceUnfoldrM
145− , benchIO "drop-all" (K.dropAll 4) K.sourceUnfoldrM
146− , benchIO "dropWhile-true" (K.dropWhileTrue 4) K.sourceUnfoldrM
155+ [ benchIO "filter-even" (K.filterEven 4) K.sourceUnfoldrM
156+ , benchIO "filter-all-out" (K.filterAllOut 4) K.sourceUnfoldrM
157+ , benchIO "filter-all-in" (K.filterAllIn 4) K.sourceUnfoldrM
158+ , benchIO "take-all" (K.takeAll 4) K.sourceUnfoldrM
159+ , benchIO "takeWhile-true" (K.takeWhileTrue 4) K.sourceUnfoldrM
160+ , benchIO "drop-one" (K.dropOne 4) K.sourceUnfoldrM
161+ , benchIO "drop-all" (K.dropAll 4) K.sourceUnfoldrM
162+ , benchIO "dropWhile-true" (K.dropWhileTrue 4) K.sourceUnfoldrM
163+ , benchIO "dropWhile-false" (K.dropWhileFalse 4) K.sourceUnfoldrM
147164 ]
148165 , benchIO "zip" K.zip K.sourceUnfoldrM
149166 , bgroup "composed"