【发布时间】:2016-04-04 05:36:46
【问题描述】:
在 Practical Common Lisp 的 Chapter 8,Macros: Defining Your Own 中,我们定义一个宏 with-gensyms 如下:
(defmacro with-gensyms ((&rest names) &body body)
`(let ,(loop for n in names collect `(,n (gensym)))
,@body))
(&rest names) 的用途是什么?如果我们只用names替换它,效果似乎是一样的。在这两种情况下,我们都会传入要“gensym-ed”的符号列表。
【问题讨论】:
标签: macros pattern-matching common-lisp practical-common-lisp