In Practical Clojure, the authors mention that once a lazy seq value is calculated, it is cached.
If we get a very large number of values from a lazy-seq, might we see an out-of-memory error? Or is there a mechanism to prevent that (e.g. older cached values are removed to make room for new ones)?