MODULE TMultiDim; // PIM/ISO multi-index array syntax: ARRAY [lo..hi], [lo..hi] OF T. // Both the repeated bracket groups and V3's earlier one-bracket comma // list must nest inside-out; indexing and whole-array copying follow // the same layout. Exit 42. TYPE Grid = ARRAY [0..1], [0..2] OF INTEGER; TYPE Grid2 = ARRAY [0..1, 0..2] OF INTEGER; TYPE B2 = ARRAY [FALSE..TRUE], [FALSE..TRUE] OF BOOLEAN; VAR ExitCode : INTEGER; VAR g : Grid; VAR h : Grid2; VAR b : B2; VAR i, j, sum : INTEGER; BEGIN sum := 0; FOR i := 0 TO 1 DO FOR j := 0 TO 2 DO g[i, j] := i * 3 + j + 1; h[i, j] := g[i, j]; sum := sum + h[i, j] END END; b[TRUE, FALSE] := TRUE; b[FALSE, TRUE] := FALSE; IF b[TRUE, FALSE] AND NOT b[FALSE, TRUE] THEN sum := sum + 1 END; ExitCode := sum + 20 END TMultiDim.