Proposed erratum for array-outer-product
Bradley Lucier 30 May 2024 21:46 UTC
Background:
The call
(array-inner-product A f g B)
produces a (generalized) array; elements of that array are computed by
reducing g on the result of mapping f along the last axis of A and the
first axis of B.
Reducing on an empty array (i.e., when the last axis of A and the first
axis of B are empty) is an error. The code for array-inner-product
always recognized that, but didn't throw an error until an element of
(array-inner-product A f g B) is accessed. If you didn't access any
elements of the result, the error wasn't thrown.
After discussions on the Chibi Github issues page, I changed the code to
throw an error earlier, when checking the arguments to the call to
array-inner-product.
The issue:
The document doesn't say that it is an error if the last axis of
(array-domain A) is empty.
I'd like to correct this omission.
Brad