(defmacro lister (p q)

(with-unique-names (x y)

`(let ((,x (x-function))

(,y (y-function)))

(list ,p ,q ,x ,y))))

the form` (lister i j)`

macroexpands to

(LET* ((#:X-88 (X-FUNCTION))

(#:Y-89 (Y-FUNCTION)))

(LIST i j #:X-88 #:Y-89))

LispWorks Reference Manual (Windows version) - 14 Dec 2001