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」にするシンボルのリストを渡します。