fillSquare :: KernelProgram '[MTensorCL [w,h]]
fillSquare = compile $ \arr -> do
  ~[x, y] <- traverse get_global_id [0,1]
  arr ! [x,y] .= castExpr x + castExpr y


fillSquare :: KernelProgram '[MTensorCL [w,h]]
fillSquare = compile $ \arr -> do
  ~[x, y] <- traverse get_global_id [0,1]
  arr ! [x,y] .= castExpr x + castExpr y


fillSquare = compile $ \arr -> do
  ~[x, y] <- traverse get_global_id [0,1]
  arr ! [x,y] .= castExpr x + castExpr y

