I've just published draft #13 of SRFI 122. It was submitted
by Bradley J. Lucier, the author of the SRFI.
http://srfi.schemers.org/srfi-122/
Here's the diff:
https://github.com/scheme-requests-for-implementation/srfi-122/pull/12/files
Here are the comments Bradley included with his pull request:
Generally:
Address comments of
http://srfi-email.schemers.org/srfi-122/msg/4288201
[comments by Sudarshan S Chawathe from 25 Sep 2016]
Add array-sample and the associated interval-scale.
Add array-reverse.
Remove interval-reduce.
Replace array-reduce with array-fold and array-fold-right (which
can provide the functionality of the old interval-reduce).
Add back interval-lower-bounds->list and
interval-upper-bounds->list. (It required too many contortions to
program withouth them.)
generic-arrays.scm:
Add interval-scale.
Remove interval-reduce. Replace internal procedure
##interval-reduce with ##interval-fold.
In array->specialized-array, special case when
result-storage-class is generic-storage-class, for which the
checker always returns #t.
Update error messages and checking throughout.
Add array-reverse.
In ##specialize-function-applied-to-array-getters, add case of
function applied to four array getters.
Remove array-reduce, add array-fold, array-fold-right.
test-arrays.scm:
Check for updated error messages across many functions.
Remove tests for interval-reduce.
Add generator random-nonnegative-interval, random-positive-vector,
and random-boolean.
Use array-fold instead of interval-reduce throughout.
Add array-fold and array-fold-right tests.
Add interval-scale and array-sample tests.
Add array-reverse tests.
Use array-fold rather than array-reduce in array-sum and
array-max.
Use array-sample in 1D-Haar-transform and
1D-Haar-inverse-transform.
Test Haar examples on mutable as well as specialized arrays.
Add some timings for larger 2D Haar transforms.
srfi-122.scm:
Small changes throughout section on "Common transformations on
Bawden-style arrays"; add list items for array-reverse and
array-sample in this section.
Remove early, small, odd section on "Examples of application
areas".
Make clear that immutable multi-valued arrays would be a
compatible extension to this SRFI, but the notation doesn't allow
multi-valued mutable arrays.
Remove interval-reduce from, and add interval-scale to list of
interval routines.
Remove array-reduce from, and add array-fold, array-fold-right,
array-reverse, and array-sample to list of array routines.
Use more tags where appropriate. Use tag with
around code.
Replace left-dimension with right-dimension in various places
discussing array-curry.
Remove interval-reduce.
Add interval-scale.
Rearrange order of some functions.
Add array-reverse, array-sample, array-fold,
array-fold-right. Remove array-reduce.
12: Use array-sample in the Haar example.
Update draft number.
Add array-every?
Add back interval-lower-bounds->list and
interval-upper-bounds->list.
srfi-122.html:
Update from srfi-122.scm.
Thank you, Bradley and Sudarshan.
Regards,
SRFI Editor