Next: , Previous: , Up: srfi vectors   [Index]


2.23.3 Rationale

R5RS provides very few list–processing procedures, for which reason SRFI-1 exists. However, R5RS provides even fewer vector operations; while it provides mapping, appending, et cetera operations for lists, it specifies only nine vector manipulation operations:

vector?         make-vector     vector
vector-length   vector-ref      vector-set!
vector->list    list->vector    vector-fill!

Many Scheme implementations provide several vector operations beyond the minuscule set that R5RS defines (the typical vector-append, vector-map, et cetera), but often these procedures have different names, take arguments in different orders, don’t take the same number of arguments, or have some other flaw that makes them unportable. For this reason, this SRFI is proposed.

It should be noted that no vector sorting procedures are provided by this SRFI, because there already is a SRFI for such a purpose, SRFI-32, which includes routines for sorting not only vectors but also lists.