Part 11
Parameter Mode "evaluates x
"

The caller is expected to provide an expression of the type and it will be used by the operation as specified in the ensures clause.

Operation Sum (evaluates I, J : Integer): Integer;
     ensures: Sum = (I + J);

Main program:
     Var Num, IntSum : Integer;
     Num := 5;

     IntSum = Sum (Num + 2; Num + 6);

After Sum executes:
     Num = 5; IntSum = 18;