begin
   comment Example of call by name.;

   integer array data [1:10];
   integer i;
   integer sum;

   integer procedure GPS(I, N, Z, V);
      integer I, N, Z, V;
   begin
      for I ≔ 1 step 1 until N do
           Z ≔ V;
      GPS ≔ 1
   end;

   for i ≔ 1 step 1 until 10 do
        data[i] ≔ i × i;
   sum ≔ 0;
   GPS(i, 10, sum, sum + data[i]);
   vprint(“Result is ”, sum)
end