Başka herhangi bir şeyin (ancak performans ayarlaması için zaman zaman yararlı bir iş getirmesi olabileceği beklentisiyle) daha fazla merak, Clojure makrolarını varolan bir işlevi "satır içi" olarak kullanmak mümkün mü? Ben gibi Yüklenenler kendimi inlined sanki tam olarak aynı işleviClojure makroları ile bir işlev belirtme
(defn my-function [a b] (+ a b))
(defn add-3-numbers [a b c]
(inline (my-function
a
(inline (my-function
b
c)))))
Ve (derleme sırasında) üretmesi var:
yani ben böyle bir şey yapmak mümkün istiyorum
(defn add-3-numbers [a b c]
(+ a (+ b c)))
"Uygula" işlevine baktınız mı? http://clojuredocs.org/clojure_core/clojure.core/apply – edbond
Geçerli çalışma zamanında dinamik olarak çalışır, derleme zamanında inlining yapan bir şey arıyorum .... – mikera
'(read-string (clojure.repl/source-fn \ 'my-function))' iyi bir başlangıç noktası gibi görünüyor! – vemv