This is the second article of the Transducers Explained tutorial. In the first article, we progressed from reducing functions to transformers to using the map transducer with transduce. In this article, we will introduce four new transducers: filter, remove, drop and take. We will show how transducers can be composed into pipelines and talk about the order of transformation. We will also modify our reduce implementation to handle early termination with reduced values.

An introduction to transducers using JavaScript. We will work from reducing over arrays, to defining transformations as transformers, then incrementally introducing transducers and using them with transduce. We will conclude with a summary of what we've learned, what is coming in future articles, and links to additional resources and existing transducer libraries.