In Clojure the
seq instruction produces elements of a list in a lazy way. It is the best of two world because the code seems a normal iteration, but it is processed lazily. Some patters of access can be put inside a
transducers and deforestation can be applied too. Seefeature/fusion.