[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Lexical references in DEFMACRO

Another problem with having the lexical environment of a defmacro'd
macro be the null environment is that you can't "macroize for speed" the
following perfecly reasonable coding style:
(let ((unique-id "foo"))
  (defun make-foo () (list unique-id () () ()))

  (defun foo-p (x) (and (listp x) (eq (car x) unique-id))))

Specifically, you couldn't turn the defun of foo-p into the seemingly
obvious defmacro.