19336, "bradcray", "Add support for 'foreach' loop expressions", "2022-03-02T00:19:23Z"
While writing a vectorizeable expression last night, I was surprised to
find that we don't support foreach
loops at the expression level.
For orthogonality with other for-loop forms, it seems like we should
provide these.
As a motivating example, it seems like it would be nice to be able to write:
var sum = + reduce (foreach i in 1..n do (A[i,0] * v[j]);
as a way of asserting that the loop is parallel-safe without having to
introduce tasks.