

CSP and Transducers in JavaScript - jackfranklin
http://phuu.net/2014/08/31/csp-and-transducers.html

======
juliangamble
Some gems in there

 _First, we have to realise that many array (or other collection) operations
like map, filter and reverse can be defined in terms of a reduce._

...

 _To get at the reducing functions, we need to make map and filter more
generic by extracting the pieces they have in common:_

 _\- Use of collection.reduce_

 _\- The 'seed' value is an empty array_

 _\- The concat operation performed on result and the input (transform-ed or
not)_

...

 _Before we do that, we need a new function: identity. It simply returns
whatever it is given:_

(Although there is a lot that may be obvious to the Haskell guys)

