Có cách nào để xác định macro mới dưới tên def
trong Clojure không? Tôi defmacro
chỉnh sửa phiên bản mới sau khi cố gắng :refer-clojure :exclude
bản gốc, nhưng dù sao nó cũng sử dụng định nghĩa được tích hợp sẵn.Xác định lại "def" trong Clojure
Tôi đã cố gắng bật định nghĩa hàm kiểu Đề án ((def (f x y) ...)
là (defn f [x y] ...)
) bằng cách sử dụng mã sau.
(defmacro def
[ id & others ]
(if (list? id)
`(defn ~(first id) [[email protected](rest id)] [email protected])
`(def ~id [email protected])))
Bạn không thể xác định lại các biểu mẫu đặc biệt. –