def ew2_loop
import bendtorch-gpu@1.3.0.0/main.bend as BendtorchGpuimport Base
80# out[i] = f(x[i], y[i]) for the leaf's cells
81def ew2_loop(~f: @+a: F32 -> @+b: F32 -> F32, k: Nat, +i: U32, +l: U32, o: Array<F32>, ra: Array<F32> & F32, rb: Array<F32> & F32) -> Array<F32>:
82 match k ra rb:
83 case 0n Tuple{a, +x} Tuple{b, +y}: o
84 case 1n+q Tuple{a, +x} Tuple{b, +y}: ew2_loop(~f, q, (i + l : U32), l, Array.set(F32, o, i, f(x, y)), Array.get(F32, a, (i + l : U32)), Array.get(F32, b, (i + l : U32)))