(defn fibs [a b] (cons a (lazy-seq (fibs b (+' a b))))) (defn fizzbuzz [x] (condp #(zero? (mod %2 %1)) x 15 "FizzBuzz" 5 "Buzz" 3 "Fizz" x)) (def fibbuzz-seq (map fizzbuzz (fibs 1 1))) ; (take 100 fibbuzz-seq) ; -> (1 1 2 "Fizz" "Buzz" 8 13 "Fizz" ... 218922995834555169026N "FizzBuzz")