Ranged indices, be it an expression or a variable, work work on the right hand side for access to existing vector or matrix elements.
This concept can be used for any expression except assignment targets.
If assignemts to vector or matrix elements have to be executed for multiple index values, then you can use explicit for-loops (programming) or implicit loops. These are generated by just using vector-valued variables (general vector-valued expressions aren't allowed) as indices in the assignment target.
I propose to extend the concept of implicit loops to any vector-valued index expressions. A naive implementation concept would be:
If the index of an assignment target is an expression:
Check for defined variables that occure on both right hand side and left hand side. If such variables are found
Generate a loop for each of these variables over the defined values
execute the assignemt by computing the target indices and the rhs expression in each iteration
Otherwise
compute the rhs (which is independent of any variables occuring in the target index expression)
compute the index expression.
Assign rhs value to all elements covered by index expression.