Clojure でこのロジックを実装しようとしています (ほんの一例):
a = 1 + 5
b = a + 3
c = a + 4
d = c + a
return f(a, b, c, d)
これまでに書いた中で最高のコードは次のようになります。
(let [a (+ 1 5) b (+ a 3) c (+ a 4) d (+ c a)] (f a b c d))
私の実際のケースでは、これらの「追加」操作ははるかに複雑で、数行のコードが必要な場合があるため、これはかなり面倒に見えます。(Lisp スタイル) のように書きたいと思います。
(set a (+ 1 5))
(set b (+ a 3))
(set c (+ a 4))
(set d (+ c a))
(f a b c d)
Clojureでそれは可能ですか?