Мне интересно: как лучше всего написать программу Clojure, которая взаимодействует с пользователем или другой программой с полным stdin и stdout?
Очевидно, можно было бы написать какой-то императивный цикл, но я надеюсь найти что-то более ленивое/функциональное, немного вдохновленное функцией Haskell "взаимодействовать".