[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Issue: FUNCTION-TYPE-REST-LIST-ELEMENT
- To: Masinter.pa@Xerox.COM
- Subject: Re: Issue: FUNCTION-TYPE-REST-LIST-ELEMENT
- From: David A. Moon <Moon@STONY-BROOK.SCRC.Symbolics.COM>
- Date: Tue, 1 Dec 87 11:46 EST
- Cc: sandra%orion@cs.utah.edu, cl-cleanup@SAIL.STANFORD.EDU
- In-reply-to: <871130-152931-1269@Xerox>
- Line-fold: No
Date: 30 Nov 87 15:29 PST
From: Masinter.pa@Xerox.COM
Charniak, Riesbeck, McDermott and Meehan's "Artificial Intelligence Programming", says:
"Also as recommended in Steele, if &REST is given in a FUNCTION type form, the
type that follows &REST refers to the type of each argument that &REST collects,
not to the type of the &REST variable (which is always a list). The definition
of + might begin
(DEFUN + (&REST NUMBERS) ...)
Its type is
(FUNCTION (&REST NUMBER) NUMBER)."
Unfortunately, I've never found the place in CLtL where such a recommendation is
made.
That's because there isn't one. Note that the reference was to "Steele", not
to CLtL. It can be found in document X3J13 / 86-003, a many-times photocopied
5 page document that is apparently entitled "A:>GLS>clarifications.text.4".
A scribble on my copy says "be explicit about &optional, colons; remanded
to declarations committee." I suppose the declarations committee is one of
those vapor committees that never produces anything? This seems like a
reasonable thing for the Cleanup committee to address, expanded to cover
all lambda-list keywords in FUNCTION type-specifiers, not just &REST.