This is a preliminary list of procedures for the R7RS vector library. It is an upward compatible extension of the vector libraries of R5RS, R7RS-small, and SRFI 43, with additional procedures that are analogous to procedures in the SRFI 1 list library and the SRFI 13 string library. As a single exception, the vector-copy procedure in R7RS-small does not provide the fill argument present in SRFI 43.
The procedures that are already in R7RS-small will not be overridden by this library, and are listed only for completeness.
Numeric vector analogues of these procedures, excluding the ones in NumericVectorsCowan, will be provided in a separate library.
make-vector (R5RS), vector (R5RS), vector-unfold (SRFI 43), vector-unfold-right (SRFI 43), vector-copy (R7RS), vector-copy! (R7RS), vector-reverse-copy (SRFI 43+), vector-append (R7RS), vector-concatenate (SRFI 43), vector-append-concatenate (SRFI 13) vector-tabulate (SRFI 1/13)
vector? (R5RS), vector-empty? (SRFI 43), vector= (SRFI 43+)
vector-ref (R5RS), vector-length (R5RS), vector-take (SRFI 1/13), vector-take-right (SRFI 1/13), vector-drop (SRFI 1/13), vector-drop-right (SRFI 13), vector-split-at (SRFI 1),
vector-fold (SRFI 43+), vector-fold-right (SRFI 43+), vector-reduce (SRFI 43+), vector-reduce-right (SRFI 43+), vector-map (SRFI 43+), vector-map! (SRFI 43+) vector-for-each (R7RS), vector-for-each-index (SRFI 13), vector-count (SRFI 43+), vector-append-map (SRFI 1), vector-filter-map (SRFI 1)
vector-filter (SRFI 1/13), vector-remove (SRFI 1/13), vector-partition (SRFI 1) vector-filter! (SRFI 1), vector-remove! (SRFI 1), vector-partition! (SRFI 1)
vector-delete (SRFI 1/13), vector-delete-duplicates (SRFI 1), vector-delete! (SRFI 1/13), vector-delete-duplicates! (SRFI 1)
vector-prefix-length (SRFI 13), vector-suffix-length (SRFI 13), vector-prefix? (SRFI 13), vector-suffix? (SRFI 13)
vector-find (SRFI 1), vector-contains (SRFI 13), vector-index (SRFI 43+), vector-index-right (SRFI 43+), vector-skip (SRFI 43+), vector-skip-right (SRFI 43+), vector-any (SRFI 43+), vector-every (SRFI 43+) vector-take-while (SRFI 1+), vector-drop-while (SRFI 1+), vector-binary-search (SRFI 43+), vector-span (SRFI 1), vector-span! (SRFI 1), vector-break (SRFI 1), vector-break! (SRFI 1)
vector-zip (SRFI 1), vector-unzip1 (SRFI 1), vector-unzip2 (SRFI 1), vector-unzip3 (SRFI 1), vector-unzip4 (SRFI 1), vector-unzip5 (SRFI 1)
vector-set! (R5RS), vector-swap! (SRFI 43), vector-fill! (R5RS+), vector-reverse! (SRFI 43+), vector-copy! (R7RS), vector-reverse-copy! (SRFI 43+)
vector->list (R5RS+), reverse-vector->list (SRFI 43+), list->vector (R5RS), reverse-list->vector (SRFI 43), vector->string (R7RS), string->vector (R7RS)