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

sequence-functions-exclude-arrays (pardon msg duplication, if any)



We currently oppose the proposal SEQUENCE-FUNCTIONS-EXCLUDE-ARRAYS:
GENERALIZE as it stands.

There are a number of issues that should be addressed.

The proposal merely offers new syntax for functionality already
provided by displaced vectors.  The argument that users (or at least
one user) "dislikes" using displaced vectors has little meaning.
The syntax for displaced vectors could be improved with some trivial
macros, while efficiency concerns should be handled by the compiler.
    
The availability of ROW-MAJOR-AREF would seem to make this proposal
even less necessary than before.  It wouldn't change the behavior of
FILL, COUNT, etc. but does make such array operations even easier to
implement efficiently.

There is no description of the meaning of :START and :END keyword arguments
for affected functions in the current proposal.
    
Do ARRAYs become a subtype of SEQUENCE?  We assume not, but this should
be specified.  However, the sequence functions won't just be
``sequence'' functions any more.  It's confusing to remember which
functions work on arrays and which don't.

Despite the proposal's claim to the contrary, it strikes us that
this is precisely an attempt to make Common Lisp into a kind of
half-baked APL.  We feel adoption of this proposal will almost
certainly result in pressure to extend still more sequence functions.
This may or may not be desirable in the long run; but this proposal is
only a partial measure.

			---Walter van Roggen &
			   Jeff Piazza
------