- (array-copy array [ result-storage-class generic-storage-class ] [ new-domain #f ] [ mutable? (specialized-array-default-mutable?) ] [ safe? (specialized-array-default-safe?) ])procedure
Assumes that array is an array, result-storage-class is a storage class that can manipulate all the elements of array, new-domain is either #f or an interval with the same volume as (array-domain array), and mutable? and safe? are booleans.
If new-domain is #f, then it is set to (array-domain array).
The specialized array returned by array-copy can be defined conceptually by:
(list->array (array->list array) new-domain result-storage-class mutable? safe?)
It is an error if the arguments do not satisfy these conditions.
Note: If new-domain is not the same as (array-domain array), one can think of the resulting array as a reshaped version of array.