clojure中类scheme函数的宏
我想创建类似定义宏的方案,下面是我的尝试:clojure中类scheme函数的宏,clojure,macros,scheme,Clojure,Macros,Scheme,我想创建类似定义宏的方案,下面是我的尝试: (defmacro define [list & body] `(defn ,(first list) [~@(rest list)] ~body)) 但当我跑步时: (定义(fooab)(+ab)) 我遇到错误:java.lang.Exception:def的第一个参数必须是符号(无源文件:18) 我的宏有什么问题?您需要使用~取消引用符号名称: (defmacro define [list & body] `(def
(defmacro define [list & body]
`(defn ,(first list) [~@(rest list)] ~body))
但当我跑步时:
(定义(fooab)(+ab))
我遇到错误:java.lang.Exception:def的第一个参数必须是符号(无源文件:18)
我的宏有什么问题?您需要使用
~
取消引用符号名称:
(defmacro define [list & body]
`(defn ~(first list) [~@(rest list)] ~@body))
您需要使用
~
取消引用符号名称:
(defmacro define [list & body]
`(defn ~(first list) [~@(rest list)] ~@body))