Go to the previous, next section.
procedure: make-vector k [object]
Returns a newly allocated vector of k elements. If object
is specified, make-vector
initializes each element of the vector
to object. Otherwise the initial elements of the result are
unspecified.
Returns a newly allocated vector whose elements are the given arguments.
vector
is analogous to list
.
(vector 'a 'b 'c) => #(a b c)
procedure+: vector-copy vector
Returns a newly allocated vector that is a copy of vector.
Returns a newly allocated vector initialized to the elements of
list. The inverse of list->vector
is vector->list
.
(list->vector '(dididit dah)) => #(dididit dah)
procedure+: make-initialized-vector k initialization
Similar to make-vector
, except that the elements of the result
are determined by calling the procedure initialization on the
indices. For example:
(make-initialized-vector 5 (lambda (x) (* x x))) => #(0 1 4 9 16)
procedure+: vector-grow vector k
K must be greater than or equal to the length of vector.
Returns a newly allocated vector of length k. The first
(vector-length vector)
elements of the result are
initialized from the corresponding elements of vector. The
remaining elements of the result are unspecified.
procedure+: vector-map vector procedure
Procedure must be a procedure of one argument. vector-map
applies procedure element-wise to the elements of vector and
returns a newly allocated vector of the results, in order from left to
right. The dynamic order in which procedure is applied to the
elements of vector is unspecified.
(vector-map '#((a b) (d e) (g h)) cadr) => #(b e h) (vector-map '#(1 2 3 4) (lambda (n) (expt n n))) => #(1 4 27 256) (vector-map '#(5 7 9) +) => #(5 7 9)
Go to the previous, next section.