Я попробовал следующее в Clojure, ожидая, что будет возвращен класс не ленивой последовательности:
(.getClass (doall (take 3 (repeatedly rand))))
Однако, это все еще возвращает clojure.lang.LazySeq
. Я предполагаю, что doall
оценивает всю последовательность, но возвращает исходную последовательность, так как она все еще полезна для запоминания.
Так в чем же идиоматическое средство создания не ленивых последовательностей из ленивых?