J'ai essayé ce qui suit dans Clojure, en m'attendant à ce que la classe d'une séquence non paresseuse soit renvoyée:
(.getClass (doall (take 3 (repeatedly rand))))
Cependant, cela revient toujours clojure.lang.LazySeq
. Je suppose que doall
cela évalue la séquence entière, mais renvoie la séquence d'origine car elle est toujours utile pour la mémorisation.
Alors, quel est le moyen idiomatique de créer une séquence non paresseuse à partir d'une séquence paresseuse?
(vec (take 3 (repeatedly rand)))
doall