vector->list, list->vector - conversion between vectors and lists
LIBRARY
(import (rnrs))                     ;R6RS
(import (rnrs base))                ;R6RS
(import (scheme r5rs))              ;R7RS
(import (scheme base))              ;R7RS
SYNOPSIS
(vector->list vector)
(vector->list vector start)         ;R7RS
(vector->list vector start end)     ;R7RS
(list->vector list)
DESCRIPTION
The
vector->list
procedure returns a newly allocated list
of the objects contained in the elements of
vector. 
The
list->vector
procedure returns a newly created vector
initialized to the elements of the list
list. 
In both procedures, order is preserved. 
- R7RS
- 
The
vector->list
procedure is limited to the elements between
start
(inclusive)
and
end
(exclusive). 
These arguments default to 0 and the length of the vector, respectively. 
IMPLEMENTATION NOTES
- Chez Scheme, Loko Scheme
- 
The empty vector is a unique object, so
(list->vector '()) does not return a newly allocated vector. 
RETURN VALUES
These procedures both return a single value; a vector object or a list. 
EXAMPLES
(vector->list '#(dah dah didah))
            => (dah dah didah)
(list->vector '(dididit dah))
            => #(dididit dah)
COMPATIBILITY
These procedures work the same everywhere except for the
start
and
end
arguments, which are only present in the R7RS variant of
vector->list. 
ERRORS
This procedure can raise exceptions with the following condition types:
- &assertion (R6RS)
- 
The wrong number of arguments was passed or an argument was outside its domain. 
- R7RS
- 
The assertions described above are errors. 
Implementations may signal an error, extend the procedure's
domain of definition to include such arguments,
or fail catastrophically. 
- 
In particular, if
list->vector
is passed a cyclical list then the procedure may not terminate. 
 
SEE ALSO
vector(3scm),
list(3scm),
list->string(3scm),
vector->string(3scm)
STANDARDS
R4RS,
R5RS,
R6RS,
R7RS
HISTORY
These procedures first appeared in R2RS. They were left out of IEEE
Scheme. But in spite of this,
list->vector
appears as an example in the standard. 
AUTHORS
This page is part of the
scheme-manpages
project. 
It includes materials from the RnRS documents. 
More information can be found at
https://github.com/schemedoc/manpages/. 
Markup created by unroff 1.0sc,    March 04, 2023.