vector.spad line 493 [edit on github]
This package provides operations which all take as arguments direct products of elements of some type A and functions from A to another type B. The operations all iterate over their vector argument and either return a value of type B or a direct product over B.
map(f, v) applies the function f to every element of the vector v producing a new vector containing the values.
reduce(func, vec, ident) combines the elements in vec using the binary function func. Argument ident is returned if the vector is empty.
scan(func, vec, ident) creates a new vector whose elements are the result of applying reduce to the binary function func, increasing initial subsequences of the vector vec, and the element ident.