parray.red 475 B

1234567891011121314151617181920
  1. module parray; % multidimensional arrays.
  2. symbolic procedure mk!-p!-array3(nx,ny,nz);
  3. <<for i:=0:nx do iputv(w,i,mk!-p!-array2(ny,nz)); w>>
  4. where w=mkvect(nx#+1);
  5. symbolic procedure mk!-p!-array2(ny,nz);
  6. <<for i:=0:ny do iputv(w,i,mkvect(nz#+1)); w>>
  7. where w=mkvect(ny#+1);
  8. symbolic procedure p!-get3(v,i,j,k);
  9. igetv(igetv(igetv(v,i),j),k);
  10. symbolic procedure p!-put3(v,i,j,k,w);
  11. iputv(igetv(igetv(v,i),j),k,w);
  12. endmodule;
  13. end;