¿Una forma idiomática de escribir código Clojure para leer repetidamente líneas desde la consola?

Recientemente, estaba escribiendo un pequeño script de CLI que necesitaba leer repetidamente las fechas desde la consola (el número de fechas para leer se calculó y podría ser diferente cada vez). Código de muestra de Ruby para darle la idea:

dates = x.times.collect { print "Enter date: "; Date.parse(gets.chomp) }

Solo por el gusto de escribirlo, escribí el script en Clojure y terminé usando un código bastante feo conswap! yloop...recur. Me pregunto cuál sería la forma más limpia de lograr el efecto deseado en Clojure. (Clojure tienedotimes, pero no retiene los valores devueltos de la evaluación del cuerpo ... como podría esperarse de un lenguaje que enfatiza la programación funcional pura.

Respuestas a la pregunta(3)

Su respuesta a la pregunta