2

Clojuregenerate-codeのループで実行される関数があります。while

; ...
(with-local-vars [code nil]
    (while true
        (var-set code (generate-code @code))
        (write-to-file @code)
        (execute-code @code)))

明らかに、これは Clojure 風ではありません。ローカル変数を導入せずにこれを行うより良い方法はありますか?

4

1 に答える 1

6

あなたはおそらく探しているlet

(let [code (generate-code)]
    (write-to-file code)
    (execute-code code))

あなたもできる

((fn [code] 
    (write-to-file code)
    (execute-code code))
 (generate-code))

または、必要に応じて

(last ((juxt write-to-file execute-code) (generate-code)))
于 2013-02-17T21:22:45.357 に答える