fork(1) download
  1. ;; consumed everything
  2. (time (println "transduce result:" (vec (take 3 (transduce (map #(do (println "transduce consumed:" %) %)) conj (take 5 (iterate #(do (Thread/sleep 500) (inc %)) 1)))))))
  3.  
  4. ;; consumed needed
  5. (time (println "lazy result:" (vec (take 3 (map #(do (println "lazy consumed:" %) %) (take 5 (iterate #(do (Thread/sleep 500) (inc %)) 1)))))))
Success #stdin #stdout 1.54s 77700KB
stdin
Standard input is empty
stdout
transduce consumed: 1
transduce consumed: 2
transduce consumed: 3
transduce consumed: 4
transduce consumed: 5
transduce result: [1 2 3]
"Elapsed time: 2129.85026 msecs"
lazy consumed: 1
lazy consumed: 2
lazy consumed: 3
lazy result: [1 2 3]
"Elapsed time: 1001.937124 msecs"