Your problem is that you are returning a sequence of un-evaluated functions. You can evaluate them as follows:
=> (map #(%) (repeat 5 (fn [] 1)))
(1 1 1 1 1)
Both map
and repeat
are lazy, but the REPL or any other consumer forces the evaluation of at least as much of a lazy sequence as it needs.