У меня есть функция, которая читает один токен из входного потока, который вызывается (индикатор потока get-next-Indicator) и возвращает его. Я пытаюсь использовать его для построения карты.
Но когда я запускаю его, он блокируется. Если я уберу одну из функций get-next-Indicator, она сработает. Пытается ли обе функции одновременно прочитать поток, вот так. Что вызывает это?
(defn decode-map [ stream ]
(loop [result {}]
(let [c (char (.read stream))]
(if (= c \e)
result
(recur (assoc result (get-next-indicator stream (int c))
(get-next-indicator stream (int c)) ))))))