How to make this sieve function lazy?

Here is the code: ;; Helper function for marking mutiples of a number as 0 (defn mark ([xs k m] (mark xs k m [])) ([xs k m mark-vec] (loop [[x & rest-xs] xs k k ma...