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

re: Issue: DEFSTRUCT-CONSTRUCTOR-KEY-MIXTURE (Version 2)



DEFSTRUCT-CONSTRUCTOR-KEY-MIXTURE:ALLOW-KEY
	Version 2, 21-Sep-88, Mailed 6 Oct 88

While I support the concept, the wording needs cleanup.  If these problems are
fixed, then I'll vote YES.

1. The proposal explicitely says to allow &OPTIONAL, &KEY, and &AUX keywords,
but fails to mention &REST and &ALLOW-OTHER-KEYS.

2. The proposal does not say how defaulting is to be done when the programmer
doesn't supply a default value for a keyword argument.  I assume that the
intent is that it will do defaulting in the same way &OPTIONAL arguments are
specified to default in CLtL, ie. if no default is supplied in the lambda-list
then use the slot initform, else undefined.

3. The proposal does not say which of key/var gets matched to the slot name in
keyword parameter specifiers of the form ((key var) [default [svar]]).  I
assume that it should be var that gets matched, since that gives the programmer
the most options, but this needs to be stated explicitely.

Note for Current Practice:  The latest version of IIM Common Lisp implements
this.