Либо я исчерпал себя за день и не могу думать правильно, либо это невозможно, но я хотел swap!
атом, который относится к бесконечной ленивой последовательности с rest
последовательности, которая являетсяв настоящее время в нем
Моя программа зависает по очевидным причинам, потому что compare-and-set!
пытается проверить предыдущее и новое равенство seq перед заменой.Проверка на равенство в основном никогда не завершается
Любая подсказка о том, как этого достичь?
(def beyond-infinity (atom (repeat 1)))
(defn keep-pulling [] (swap! beyond-infinity #(rest %)))
РЕДАКТИРОВАТЬ
Ранее мой ленивый seq был range
в котором это работало, но на REPL из-за реализации возвращенного seq, мой REPL зависал