The following example assigns a reference to procedure SWAPPER in the first element of the procedure reference array PROCARRAY and to the procedure reference PROCREF. SWAPPER is then invoked through PROCARRAY and PROCREF.
BEGIN
*
*
*
REAL
SORT1,
SORT2,
SORT3;
PROCEDURE REFERENCE ARRAY PROCARRAY[0:9] (A,B);
REAL A,B;
NULL;
PROCEDURE REFERENCE PROCREF(A,B);
REAL A,B;
NULL;
PROCEDURE SWAPPER(X,Y);
REAL X,Y;
BEGIN
X :=: Y;
END;
PROCARRAY[0] := SWAPPER;
PROCREF := SWAPPER;
READ (MYFILE, *, SORT1, SORT2);
IF SORT2 > SORT1 THEN
PROCARRAY[0] (SORT1, SORT2);
READ (MYFILE, *, SORT3);
IF SORT3 > SORT2 THEN
PROCREF(SORT2, SORT3);
END.
