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

Re: Lexical references in DEFMACRO



    Date: 6 May 86 10:46 PDT
    From: Gregor.pa@Xerox.COM

    I thought the obvious defmacro was:

	  (defmacro foo-p (x) `(and (listp ,x) (eq (car ,x) ',unique-id))))

    which is the lexically binding of unique-id I had in mind.  I will try
    not to be so terse next time.

I see.  I think I had a momentary brain failure in which I thought Common
Lisp non-top-level DEFUN was intended to work like Scheme DEFINE.

I think what's underlying all of this is that the provisions for non-top-level
definitions in current Common Lisp are ill-thought-out and probably inconsistent.
I don't recall the discussions predating the publication of the manual spending
a lot of time on these issues.  Getting this resolved, and a language definition
that we can all agree is useful, makes sense, and is implementable, is something
the new standardization and language cleanup process that is starting is going
to have to attack.  Your example is one more example of a problem with the
current half attempt at non-top-level definitions that's going to have to be
considered.