¿Hay alguna forma de definir una macro nueva bajo el nombre def
en Clojure? I defmacro
ed uno nuevo después de intentar :refer-clojure :exclude
el original, pero utilizó la definición incorporada de todos modos.Redefiniendo "def" en Clojure
Intenté habilitar las definiciones de función de estilo de esquema ((def (f x y) ...)
como (defn f [x y] ...)
) utilizando el siguiente código.
(defmacro def
[ id & others ]
(if (list? id)
`(defn ~(first id) [[email protected](rest id)] [email protected])
`(def ~id [email protected])))
No puede redefinir formularios especiales. –