参照を確認しました:http ://clojure.org/vars#Vars%20and%20the%20Global%20Environment、http : //clojuredocs.org/clojure_core/clojure.core/binding
clojureと^:dynamicおよびClojureDynamicBindingと同様に
binding
私が書いたすべてのプログラムにはそれらがなく、従来の方法で例を書く方法を見つけることができるので、なぜ必要なのかまだわかりません-私はより理解しやすいと思います。これを利用したプロジェクト/プログラミングパラダイムの例はありますか?
たとえば...動物を話す例では、次のようにして同様の効果を得ることができます。
(def dog {:name "Dog" :sound "Woof"})
(def cat {:name "Cat" :sound "Meow"})
(defn speak [animal]
(str (:name animal) " says " (:sound animal))
(println (speak dog))
(println (speak cat))
マクロも動的バインディングもありません...それでも非常にクリーンです。