私が理解しているように、ループを使用せずにClojureで再帰的に繰り返す構文は、短いシーケンスでは問題にならないかもしれません。ただし、反復関数を記述するためには、loop .. recur構文を使用することをお勧めします。ですから、私はまず最初に好きな方法から始めたいと思います。このデータを用いて試験した(その値を含まない配列構造)配列の骨格を返し変換するループ...再帰の再帰
しかし、私はこの機能を変換するために苦労してきた[編集]
(defn skl
[tree]
(map skl (filter seq? tree)))
(def test_data1 '(1 (2 3) () (()) :a))
(def test_data2 '(1 2 (3 4) (5 (6 7 8))))
再帰構文。すべてのアイデアや例を指摘していただければ幸いです。
ありがとうございます。あなたはClojure.zipを参照しています。私はそれについて知っている、それを使用し、この運動をしたくないと思った。 – octopusgrabbus
トランポリンは、ここでも直接適用することはできませんが、ループ再発に加えて知るべき興味深い機能です。 –