Semantics

To describe the PL/I language, the following conventions are used:
  • The descriptions are informal. For example, we usually write x must be a variable instead of the more precise x must be the name of a variable. Similarly, we can sometimes write x is transmitted instead of the value of x is transmitted. When the syntax indicates reference, we can later write the variable instead of the referenced variable.
  • When we say that two different source constructs are equivalent, we mean that they produce the same result, and not necessarily that the implementation is the same.
  • Unless specifically stated in the text following the syntax specification, the unqualified term expression or reference refers to a scalar expression. For an expression other than a scalar expression, the type of expression is noted. For example, the term array expression indicates that neither a scalar expression nor a structure expression is valid.
  • When a result or behavior is undefined, it is something you must not do. Use of an undefined feature is likely to produce different results on different implementations or releases of a PL/I product. The application program is considered to be in error.
  • Default is used to describe an alternative value, attribute, or option that is assumed by the system when no explicit choice is specified.
  • Implicit is used to describe the action taken in the absence of an explicit specification by the program.
  • The lowercase letter b, when not in a word, indicates a blank character.