On Apr 13, 2013, at 21:34 , Stas Boukarev 
<stass...@gmail.com<mailto:stass...@gmail.com>>
 wrote:

Antoniotti Marco 
<antoniotti.ma...@disco.unimib.it<mailto:antoniotti.ma...@disco.unimib.it>> 
writes:

On Apr 13, 2013, at 20:02 , Stas Boukarev 
<stass...@gmail.com<mailto:stass...@gmail.com>>
wrote:

Antoniotti Marco 
<antoniotti.ma...@disco.unimib.it<mailto:antoniotti.ma...@disco.unimib.it>> 
writes:

(defmacro foo (n &optional ((s &key d f) '(42222 :f 33)))
  `(list ,f ,n ,s ,d))


it appears to work on SBCL, CCL and LW (just changed a few things and do not 
have an Allegro running)

It is nice, but I believe that the CLHS says otherwise.
What do you mean, CLHS says otherwise?
See
http://www.lispworks.com/reference/HyperSpec/Body/03_ddab.htm

Good catch.

And yet...

http://www.lispworks.com/documentation/HyperSpec/Body/03_dd.htm
And yet, what? Nothing stated there contradicts the previous section.

optvars::= [&optional {var | (var [init-form [supplied-p-parameter]])}*]

It is true that the the next section you cite clarifies that 'var' can be a 
destructuring  list, however, the above can be confusing; at least it was to me.

And why is this in pro@?

Because I am a pro (albeit a small one) and this is a matter of inconsistencies 
in the spec?

It would appear to me that questions, which could be resolved by careful
reading of the spec, are out of scope of this mailing list, but what do I
know?

Well, I learned something I did not know, and it may have refreshed people' 
memories.  Is that so bad?
I apologize for having wasted your obviously very valuable time.

Cheers

--
Marco Antoniotti, Associate Professor tel. +39 - 02 64 48 79 01
DISCo, Università Milano Bicocca U14 2043 http://bimib.disco.unimib.it
Viale Sarca 336
I-20126 Milan (MI) ITALY

Please note that I am not checking my Spam-box anymore.
Please do not forward this email without asking me first.





Reply via email to