Hacker News new | ask | show | jobs
by sax 5145 days ago
If you haven't read his introductory post check it out here: http://clojure.com/blog/2012/05/08/reducers-a-library-and-mo...

My understanding is this: the genesis for fold (as opposed to foldl) is from the linked talk: http://vimeo.com/6624203.

If fold (a concurrent reduce) is used instead of foldl (a sequential reduce), then the mapping function can be pushed down and applied concurrently to the various elements. A generic mechanism can then be used for dispatching concurrent operations. These functional operation are composed of first mapping (and/or) filtering and then reducing.

[EDIT: typo and re-phrase]