ABSTRACT

The concept of a procedure interface has been introduced gradually in this book. Section 8.9 explained that a special kind of “interface block” headed by a statement of the form

INTERFACE OPERATOR (.op.) is needed at the start of a subprogram so that a certain external function will be invoked whenever the defined operator .op. is used in that subprogram. It was also mentioned that other kinds of interface blocks are required for certain other purposes. In Section 10.6 it was pointed out that interface blocks to procedures can be placed within modules for convenience, so that only a USE statement needs to appear in the subprograms that call the procedures in question. However, if the procedure is not external but is a module procedure, then what may be needed (in addition to a USE statement for the module procedure itself) is a simplified version of an interface block in which the procedure’s name is mentioned in a MODULE PROCEDURE statement.