[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
- To: "cl-cleanup" <email@example.com>
- Subject: function-type-rest-list-element
- From: "AITG::VANROGGEN" <firstname.lastname@example.org>
- Date: 23 Feb 88 14:07:00 EDT
- Cc: vanroggen
- Reply-to: "AITG::VANROGGEN" <email@example.com>
We oppose the proposal FUNCTION-TYPE-REST-LIST-ELEMENT:
We feel that although specifying the element type in a function
type specifier is slightly more convenient, it is outweighed by
its inconsistency and lack of expressiveness.
If specifying the element type of lists is an important issue,
and we think it is, then we should extend the LIST type to be
a list type:
(LIST [<element-type> [<length>]])
just like for VECTOR. In fact, it would also be wise to
extend SEQUENCE in the same way.
VAX LISP has always made use of FUNCTION type specifiers, although
it has ignored the &REST and &KEY type information.
There's no reason why someone might not write a function type
specifier with &REST being a supertype of LIST. It just can't
conflict with LIST.
The statement in the discussion favoring USE-ACTUAL-ARGUMENT-TYPE
referring to ``the weight of current practice'' itself doesn't have
any weight when previous statements say that function type specifiers
are in limited use and that most implementations ignore them--there
is no ``current practice''.
We agree with Kent Pitman's first two comments (at the end of the
Discussion section), but don't understand his last one.