lazy-seq uses cons, use juxt
(defn pronounce [coll]
(let [p (mapcat (juxt count first) (partition-by identity coll))]
(lazy-seq (cons p (pronounce p)))))
; dude what??
(partial (comp next iterate)
#(mapcat (juxt count first) (partition-by identity %)))