HP OpenVMS Systems Documentation

Content starts here

HP Fortran for OpenVMS
Language Reference Manual

Previous Contents Index

subroutine subprogram: A sequence of statements starting with a SUBROUTINE (or optional OPTIONS) statement and ending with the corresponding END statement. See also subroutine.

subscript: A scalar integer expression (enclosed in parentheses and appended to the array name) indicating the position of an array element. The number of subscripts is the rank of the array. See also array element.

subscript triplet: An item in a section subscript list specifying a range of values for the array section. A subscript triplet contains at least one colon and has three optional parts: a lower bound, an upper bound, and a stride. Contrast with vector subscript. See also array section and section subscript.

substring: A contiguous portion of a scalar character string. Do not confuse this with the substring selector in an array section, where the result is another array section, not a substring.

symbolic name: See name.

syntax: The formal structure of a statement or command string.

target: The named data object associated with a pointer (in the form pointer-object => target). A target is declared in a type declaration statement that contains the TARGET attribute. See also pointer and pointer association.

thread: Part of a program that can run at the same time as other parts, usually with some form of communication and/or synchronization among the threads. See also multithreading.

transformational function: An intrinsic function that is not an elemental or inquiry function. A transformational function usually changes an array actual argument into a scalar result or another array, rather than applying the argument element by element.

truncation: Can be either of the following:

  • A technique that approximates a numeric value by dropping its fractional value and using only the integer portion.
  • The process of removing one or more characters from the left or right of a number or string.

type declaration statement: A nonexecutable statement specifying the data type of one or more variables: an INTEGER, REAL, DOUBLE PRECISION, COMPLEX, DOUBLE COMPLEX, CHARACTER, LOGICAL, or TYPE statement. Also called a type declaration or type specification.

type parameter: Defines an intrinsic data type. The type parameters are kind and length. The kind type parameter (KIND=) specifies the range for the integer data type, the precision and range for real and complex data types, and the machine representation method for the character and logical data types. The length type parameter (LEN=) specifies the length of a character string. See also kind type parameter.

unary operator: An operator that operates on one operand. For example, the minus sign in -A and the .NOT. operator in .NOT. (J .GT. K) .

underflow: An error condition occurring when the result of an arithmetic operation yields a result that is smaller than the minimum value in the range of a data type. For example, in unsigned arithmetic, underflow occurs when a result is negative. See also denormalized number.

unformatted data: Data written to a file by using unformatted I/O statements; for example, binary numbers.

unformatted I/O statement: An I/O statement that does not contain format specifiers and therefore does not translate the data being transferred. Contrast with formatted I/O statement.

unformatted record: A record that is transmitted in internal format between internal and external storage.

unit identifier: The identifier that specifies an external unit or internal file. The identifier can be any one of the following:

  • An integer expression whose value must be zero or positive
  • An asterisk (*) that corresponds to the default (or implicit) I/O unit
  • The name of a character scalar memory reference or character array name reference for an internal file

Also called a device code, or logical unit number.

unspecified storage unit: A unit of storage for holding a pointer or other scalar object of non-default intrinsic type.

upper bound: See bounds.

use association: The process by which the entities in a module are made accessible to other scoping units (through a USE statement in the scoping unit).

user-defined type: See derived type.

variable: A data object (stored in a memory location) whose value can change during program execution. A variable can be a named data object, an array element, an array section, a structure component, or a substring. Contrast with constant.

variable format expression: A numeric expression enclosed in angle brackets ( <> ) that can be used in a FORMAT statement. If necessary, it is converted to integer type before use.

variable-length record type: A file format in which records may be of different lengths.

vector subscript: A rank-one array of integer values used as a section subscript to select elements from a parent array. Unlike a subscript triplet, a vector subscript specifies values (within the declared bounds for the dimension) in an arbitrary order. Contrast with subscript triplet. See also array section and section subscript.

whole array: An array reference (for example, in a type declaration statement) that consists of the array name alone, without subscript notation. Whole array operations affect every element in the array. See also array.

zero-sized array: An array with at least one dimension that has at least one extent of zero. A zero-sized array has a size of zero and contains no elements. See also array.

Index Contents