A recent [HN comment](<a href="https://news.ycombinator.com/item?id=31638348" rel="nofollow">https://news.ycombinator.com/item?id=31638348</a>) mentioned Clojure transducers so I decided to see what Python implementations were available. That search led to the [python-transducers](<a href="https://github.com/sixty-north/python-transducers" rel="nofollow">https://github.com/sixty-north/python-transducers</a>) library and accompanying amazing series of blog posts (of which OP is the first).