Functions, Subroutines, and Statement Functions

Functions, subroutines, and statement functions are user-written subprograms that perform computing procedures. The computing procedure can be either a series of arithmetic operations or a series of Fortran statements. A single subprogram can perform a computing procedure in several places in a program, to avoid duplicating a series of operations or statements in each place.

The following table shows the statements that define these subprograms, and how control is transferred to the subprogram:

Subprogram  Defining Statements  Control Transfer Method 
Function   FUNCTION or ENTRY  Function reference1 
Subroutine   SUBROUTINE or ENTRY  CALL statement2 
Statement function   Statement function definition  Function reference 
1 A function can also be invoked by a defined operation (see Defining Generic Operators).
2 A subroutine can also be invoked by a defined assignment (see Defining Generic Assignment).

A function reference is used in an expression to invoke a function; it consists of the function name and its actual arguments. The function reference returns a value to the calling expression that is used to evaluate the expression.

The following topics are discussed in this section:

For More Information: