foldl' is:exact -package:containers -package:base -package:ghc -package:vector

foldl' is like foldl, but strict in the accumulator.
foldl' is like foldl, but strict in the accumulator.
foldl' is like foldl, but strict in the accumulator.
O(n) A strict version of foldl.
A strict version of foldl. Properties
foldl' f z0 . stream = foldl' f z0
foldl' is like foldl, but strict in the accumulator.
Reduce this map by applying a binary operator to all elements, using the given starting value (typically the left-identity of the operator). Each application of the operator is evaluated before using the result in the next application. This function is strict in the starting value.
Reduce this set by applying a binary operator to all elements, using the given starting value (typically the left-identity of the operator). Each application of the operator is evaluated before before using the result in the next application. This function is strict in the starting value.
Strict left fold of the metadatas
Left-associative fold of a structure but with strict application of the operator. This ensures that each step of the fold is forced to Weak Head Normal Form before being applied, avoiding the collection of thunks that would otherwise occur. This is often what you want to strictly reduce a finite structure to a single strict result (e.g. sum). For a general Foldable structure this should be semantically identical to,
foldl' f z = foldl' f z . toList
Strict left fold over all key-value pairs in the headers map. Example:
ghci> :set -XOverloadedStrings
ghci> import Data.Monoid
ghci> let hdrs = H.fromList [("Accept", "text/plain"), ("Accept", "text/html")]
ghci> let f (cntr, acc) _ val = (cntr+1, val <> ";" <> acc)
ghci> H.foldl' f (0, "") hdrs
(2,"text/html;text/plain;")
Left-associative fold of a structure but with strict application of the operator. This ensures that each step of the fold is forced to weak head normal form before being applied, avoiding the collection of thunks that would otherwise occur. This is often what you want to strictly reduce a finite list to a single, monolithic result (e.g. length). For a general Foldable structure this should be semantically identical to,
foldl' f z = foldl' f z . toList
O(n). A strict version of foldl. Each application of the operator is evaluated before using the result in the next application. This function is strict in the starting value.
O(n). A strict version of foldl. Each application of the operator is evaluated before using the result in the next application. This function is strict in the starting value.
O(n) A strict version of foldl. Subject to fusion.
O(n) Left fold with strict accumulator
O(n) Left fold with strict accumulator
O(n) Left fold with strict accumulator
O(n) Left fold with strict accumulator
Synonym for ofoldl'
Strict version of foldl.
Strict version of foldl.
Left associative/strict push fold. foldl' reduce initial stream invokes reduce with the accumulator and the next input in the input stream, using initial as the initial value of the current value of the accumulator. When the input is exhausted the current value of the accumulator is returned. Make sure to use a strict data structure for accumulator to not build unnecessary lazy expressions unless that's what you want. See the previous section for more details.