[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 <Moon@STONY-BROOK.SCRC.Symbolics.COM>
    
	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.
    
But under some of the new declaration-semantics proposals, the ignore
decl. would apply to only one of the parameters, thus given

(lambda (x y x z x) (declare (ignore x))...)

a compiler should still warn (or signal an error) that two of the
parameters illegally share a name. [Perhaps this can be used as an
argument against the proposal that a decl only affect only one of the
identically named entities to which it refers.]

-- Nick