One of the newer features in Clojure, transducers, offers an additional means of higher-order abstraction. As I understand it-- which is not (yet) well!-- a transducer automates converting one algorithm to another (say, evolving one mapper or reducer or collector into another of the same kind).
Does your book cover the purpose and idiomatic usage of transducers, or did it reach press before that feature entered the language? If you do touch on transducers, can you offer an example that would make clear, especially for the imperatively-minded Clojure wannabe, what sort of use case or problem would call for that capability?
Thanks for contributing to the forum!