SICP FactorialをClojureで実装してみた Oct 23, 2018 またまた階乗です。ヲレはこの手のコードはデフォルトiterate使って 遅延シーケンスつくるです。 (take 10 (iterate (fn[[a b]][(* a b) (inc b)]) [1 2])) Clojureだと末尾最適化が?なのではありますがコーンなコードでいかがでしょうか。 (defn fact-iter [product counter max-count] (if (> counter max-count) product (recur (* counter product) (inc counter ) max-count)) ) (defn factorial [n] (fact-iter 1 1 n)) (factorial 6)