I mentioned before in
http://groups-beta.google.com/group/comp.lang.scheme/browse_thread/ thread/b2b0f2 84af10d309/17b266e34fbb7f17?q=lucier+arrays&rnum=3#17b266e34fbb7f17
the availability of code for operations on what I consider to be generic arrays. I've just finished a test suite for that code and in the process found and fixed a fair number of bugs. I'd appreciate any people who might want to try the code, which is at
http://www.math.purdue.edu/~lucier/array-code
A brief description of the code follows.
Arrays are just mappings from Intervals (hyper-rectangles of multi-indices) to Scheme objects; mutable arrays can have this mapping changed with a setter; Fixed-arrays have a backing store.
Besides basic functions for manipulating these objects and their fields, the following procedures are provided:
Interval-for-each, Interval-reduce
Array-lazy-map, Array-for-each, Array-reduce, Array->Fixed-array, Fixed-array-share!, and Array-map
Brad