Subject: Re: Macro lambda list
From: rpw3@rpw3.org (Rob Warnock)
Date: Mon, 26 Apr 2004 23:51:15 -0500
Newsgroups: comp.lang.lisp
Message-ID: <7OOdnSulpbNeexDdRVn-jA@speakeasy.net>
Tim Bradshaw  <tfb@cley.com> wrote:
+---------------
| I tend to do:
| (defmacro with-foo ((&key) &body body)
|   ...)
+---------------

Hmmm... Yes, given the absence of &ALLOW-OTHER-KEYS, one would hope
that the implmentation would complain if the macro were given any args
in that place. But CMUCL doesn't. In fact, it doesn't even complain
about odd-length keyword args or non-keywords there:

    > (defmacro with-foo ((&key) &body body)
        `',body)
    > (with-foo () ljh lj h)

    (LJH LJ H)
    > (with-foo (:abc) ljh lj h)

    (LJH LJ H)
    > (with-foo (abc) ljh lj h)

    (LJH LJ H)
    > 

(Oops.)


-Rob

-----
Rob Warnock			<rpw3@rpw3.org>
627 26th Avenue			<URL:http://rpw3.org/>
San Mateo, CA 94403		(650)572-2607