DL
Size: a a a
DL
VL
EZ
a
LL
LL
LL
ND
EZ
ND
EZ
LL
EZ
(defn foo [& args]
(let [[x & more] args]
(prn x)
(if more (recur more) nil)))
(foo :a :b :c)
==>
:a
:b
:c
(defn bar [& args]
(let [[x & more] args]
(prn x)
(if more (bar more) nil)))
(bar :a :b :c)
==>
:a
(:b :c)
EZ
recur
есть, но это не от хорошей жизни, а из-за отсутствия TCOLL
(defn foo [& args]
(let [[x & more] args]
(prn x)
(if more (recur more) nil)))
(foo :a :b :c)
==>
:a
:b
:c
(defn bar [& args]
(let [[x & more] args]
(prn x)
(if more (bar more) nil)))
(bar :a :b :c)
==>
:a
(:b :c)
LL
LL
DL
recur
есть, но это не от хорошей жизни, а из-за отсутствия TCO