The following is legal Common Lisp. (let ((tag (gensym))) (defun foo () tag)) What about this? (Yes, this example is stupid, but there are uses of the idea that aren't.) (let ((tag (gensym))) (defmacro foo () tag)) What about defsetf's inside top-level lets? -andy -------