Rational Developer for System z
PL/I for Windows, Version 8.0, Programming Guide

REDUCIBLE functions

REDUCIBLE indicates that a procedure or entry need not be invoked multiple times if the argument(s) stays unchanged, and that the invocation of the procedure has no side effects.

For example, a user-written function that computes a result based on unchanging data should be declared REDUCIBLE. A function that computes a result based on changing data, such as a random number or time of day, should be declared IRREDUCIBLE.

In the following example, f is invoked only once since REDUCIBLE is part of the declaration. If IRREDUCIBLE had been used in the declaration, f would be invoked twice.

  dcl (f) entry options( reducible ) returns( fixed bin );

  select;
    when( f(x) < 0 )
         .
         .
         .
    when( f(x) > 0 )
         .
         .
         .
    otherwise
         .
         .
         .
  end;

Terms of use | Feedback

This information center is powered by Eclipse technology. (http://www.eclipse.org)