[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Optimization of slot access in default argument expressions
Date: Tue, 8 Jan 91 10:51 CST
From: lgm@iexist.att.com
Is this difference somehow required by the ANSI Common Lisp spec, or is
this simply a minor case that Symbolics has not yet gotten around to
optimizing?
&AUX variables aren't even "arguments"; they're simply a shorthand for
binding local variables. I think this is simply a missing optimization.
(defun/defmethod foo (... &aux <aux-specs>) [<doc-string>] <body>)
is defined to be equivalent to
(defun foo (...)
[<doc-string>]
(let* <aux-specs>
<body>))
as long as <body> doesn't begin with any declarations (if it does, then
the declarations related to the real arguments have to be outside the
LET*, while those for the &AUX variables must be inside).
barmar