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

Proposed new lambda-list syntax



    Date: 25 September 1981 22:06-EDT
    From: Richard M. Stallman <RMS at MIT-AI>
    To: LISP-FORUM at MIT-AI

    My proposed lambda-list syntax does apply sensibly to optional,
    key, rest and aux arguments, and grinds much better than the
    existing syntax does.
How it grinds doesn't seem relevant since anything grinds well if the
grinder knows how to grind it.

I realized since I made the comment that the above paragraph is in reply
to that it's not so bad for &optional and so forth as I thought, since
you allow the syntax
	(optional a b)
rather than
	(optional a)
	(optional b)
which was the impression I had gotten from your original message.

    It is not really more complicated either.  It replaces one "&" with
    two parentheses.  This probably makes it easier to type on a Lisp
    machine keyboard, since "&" is a shifted character and parentheses are
    not.
This is not really true, since one must say "default" which was not necessary
before.

Also you haven't explained how one would initialize aux variables.  When you
do, bear in mind that currently the syntax for this is compatible with LET
and PROG.

I don't think you ever explained what this new syntax was for, other than
saying it is more "lispy", which really doesn't mean anything.  Is it
intended to allow more syntactic space for adding some new feature?