Certain intrinsics return a value to the calling program in
functional returns. These routines return a specified value type
(for example, 16-bit signed integer, character, or 64-bit real)
in its name.
Functional returns are declared in an assignment statement,
where the value returned is assigned to some variable of the same
type as the functional return. The symbol := is the assignment operator that is "assigned the
value of" or "receives the value of". The variable receiving the
functional return appears on the left-hand side of the assignment
operator, while the call to the intrinsic with a functional return
appears on the right-hand side.
For example, an intrinsic call description format for functional
returns appears below with the READ intrinsic, which returns to a 16-bit signed integer
indicating the length of the input read. The data type of each variable
is signified by a mnemonic above the variable name:
I16 U16A I16V length:=READ(message,expected); |
The READ intrinsic is read as a 16-bit signed integer procedure,
where message is a required 16-bit unsigned integer array passed
by reference and expected is a required 16-bit integer passed by value.
Other expressions that can contain calls to an intrinsic with
a functional return can appear in an output statement, the parameter
list of a procedure, or a conditional statement. Refer to the individual
programmer's language and reference manuals for details on functional
returns.