Why does with-meta realize lazy sequences?

+1 for @zelark !
You can double check the CHUNK_SIZE in clojure.lang.Range.java.
Furthermore, just try this and you’ll see that it stops at 31

(-> (map #(do (println %)
                    (* 10 %))
               (range 33))
          (with-meta {:some-metadata "some-metadata"})
          meta)
1 Like