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

fill-pointers and destructive sequence functions

    If a destructive sequence function such as DELETE is passed an
array with a fill pointer, may it reduce the size of the argument by
adjusting the fill-pointer?  The alternative would be to require the
(ARRAY-DIMENSION <res> 0) to be the resulting length.  This seems
excessively restrictive, since sequence functions only deal with the
active elements of vectors.

    What should ADJUST-ARRAY do with the fill-pointer in an array if
there is no :FILL-POINTER argument specified?  It seems sub-optimal to
leave it pointing into hyperspace.  Does the fill pointer go away?

    Is it legal for MAKE-ARRAY to return an array with a fill-pointer
when no :FILL-POINTER option was specified?  This question is similar
to the question "Are there contexts in which not having a fill-pointer
is important?"  Currently any Spice Lisp vector which is not a
SIMPLE-ARRAY has a fill pointer.