我想编写一个宏,将让我简化多个顶级变量的定义在一个单一的表达。
当时的想法是,使工作类似于如何let
作品:
(defparameters ((*foo* 42)
(*bar* 31)
(*baz* 99)))
我尝试使用以下,但它似乎并没有做任何事情。
(defmacro defparameters (exprs)
(dolist (expr exprs)
(let ((name (car expr))
(exp (cadr expr)))
`(defparameter ,name ,exp))))
我已经尝试使用macroexpand
但它似乎并没有在所有扩大。
我究竟做错了什么? 我该如何解决?