This example program uses the SWAP statement to sort a real array.
BEGIN FILE REM(KIND=DISK,TITLE="SORT/OUT.",PROTECTION=SAVE); INTEGER I,J; DEFINE LASTONE = 5#; INTEGER ARRAY ARY[0:LASTONE]; PROCEDURE SORTER; BEGIN BOOLEAN PROCEDURE NEED_TO_SWAP(A,B); VALUE A,B; INTEGER A,B; BEGIN IF (A > B) THEN NEED_TO_SWAP:= TRUE ELSE NEED_TO_SWAP:= FALSE; END NEED_TO_SWAP; FOR I := 0 STEP 1 WHILE (I < LASTONE) DO BEGIN FOR J := I+1 STEP 1 UNTIL LASTONE DO IF (NEED_TO_SWAP(ARY[I],ARY[J])) THEN ARY[I] :=: ARY[J]; END FOR_I_LOOP; END SORTER; ARY[0] := 9432; ARY[1] := 17; ARY[2] := 542; ARY[3] := 359; ARY[4] := 15762; ARY[5] := 12003; SORTER; FOR I := 0 STEP 1 UNTIL LASTONE DO WRITE(REM,//,ARY[I]); END.

