Mi stavo esercitando a scrivere macro e non riesco a far funzionare defn
.Come posso scrivere una macro "defn" in Clojure?
La mia sintassi è: (my-define name parameter body)
Ignorando & parametri e le routine ricorsive, Come faccio lego il nome ad un (fn [parametri] corpo)?
È possibile utilizzare 'macroexpand' vedere nel repl quello che una macro si espande a. Per esempio. '(macroexpand '(defn foo [] 1))'. Ciò è utile sia nel debug dei propri macro, sia nel tentativo di imparare dalle macro clojure/core. – liwp
Può anche usare '(source defn)' per ispezionare direttamente il codice sorgente. – dqc