[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Proposal about lambda-list params
Date: Mon, 28 Jul 86 21:58 EDT
From: David A. Moon
Date: 23 Jul 1986 23:55-EDT
From: NGALL@G.BBN.COM
The following thought just struck me. If we change CL to outlaw
things like (lambda (x x ...)...), then people who have been
writing
code like (lambda (ignore x ignore) (declare (ignore ignore))...)
may be upset when their code breaks.
Since it "is an error", not "signals an error", those people are free
to
criticize their compiler for wasting their time with worthless warnings
if it warns about this. It seems clear enough that warning about
duplicate
parameter names when the parameters are explicitly ignored does no one
any good.
"it is an error" means that a correct compiler may generate arbitrary
and worthless code when it encounters this case. If "(lambda (ignore x
ignore) (declare (ignore ignore))...)" is an error, then it may do worse
than break. This should either be legal, specified to signal an error,
or at least specified that, if not caught, will be harmless (not one of
the error catagories I know of)