PROGRAM main FUNCTION foo(): INTEGER; VAR i, j, k : INTEGER; arr : ARRAY[1..32768] of INTEGER; f : FLOAT; ENDVAR BEGIN END FUNCTION foo1():INTEGER BEGIN END PROCEDURE p():INTEGER BEGIN END FUNCTION foo2(x : INTEGER):FLOAT BEGIN foo2 := x; END BEGIN VAR %% can be empty or completely missing ENDVAR BEGIN VAR w, x, z: INTEGER; ENDVAR x := foo(7, 97); WRITE(x); WRITESP(); z := foo(13, 1023); WRITE(z); WRITELN(); foo2(1.5); END END