[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Issue: LIST-TYPE-SPECIFIER (Version 1)
- To: Michael J. Beckerle <BECKERLE@XX.LCS.MIT.EDU>
- Subject: Issue: LIST-TYPE-SPECIFIER (Version 1)
- From: masinter.pa@Xerox.COM
- Date: 23 Nov 88 10:55 PST
- Cc: cl-cleanup@sail.stanford.edu
- In-reply-to: Michael J. Beckerle <BECKERLE@XX.LCS.MIT.EDU>'s message of Wed, 31 Aug 88 15:25:52 EDT
Michael J. Beckerle:
Please reply if you get this... If you want to pursue this, can you produce
a new draft of the proposal quickly? Please let us know what your schedule
is.
The summary so far is that there are possibly two kinds of type specifier
syntax:
(<list-consisting-of-all> NUMBER)
for example, (1 2 12323)
(<list-with-explicit-elements> NUMBER SYMBOL)
for example, (1 A)
For the second type of description, there are some design choices about
whether "extra" arguments are legal, e.g., is
(typep '(1 A 3) '(<list-with-explicit-elements> NUMBER SYMBOL))
valid? There might be a possibility of using the function argument list
notation, e.g.,
(<list-with-explicit-elements> NUMBER SYMBOL &KEY (:FROB NUMBER)
&ALLOW-OTHER-KEYS)
which would lead to the recursive ambiguity of
(<list-with-explicit-elements> &REST (<list-with-explicit-elements>
NUMBER))
(:->)
- - - - - - - -
For whatever additional type descriptors one might add, the question could
be whether an implementation which had a new kind of LIST which was not
read-only and not completely writable, but for which it would be an error
to modify the structure of the list so that it no longer conformed to a
predefined type specification.
This proposal would interact with TYPE-OF-UNDERSPECIFIED (would (TYPE-OF
'(1 2)) be allowed to return (<list-with-explicit-elements> (MEMBER 1)
(MEMBER 2))?)
Given the desired semantics, there is then some debate about what the
*name* of the type specifiers might be; the proposed names LIST and LIST-OF
could arguably be applied to either kind of specifier.
I not personally inclined to pursue this issue. The fact that there is a
feature that several people want is not one of the more serious ones.