Glossary

This glossary defines technical terms and abbreviations that are used in z/OS® XL C/C++ documentation. If you do not find the term you are looking for, refer to the index of the appropriate z/OS XL C/C++ manual or view IBM® Glossary of Computing Terms, located at: www.ibm.com/ibm/terminology.

The following cross-references are used in this glossary:
  • See refers you from a term to a preferred synonym, or from an acronym or abbreviation to the defined full form.
  • See also refers you to a related or contrasting term.

To view glossaries for other IBM products, go to www.ibm.com/software/globalization/terminology.

A

abstract class
  1. In object-oriented programming, a class that represents a concept; classes derived from it represent implementations of the concept. An object cannot be constructed from an abstract class; that is, it cannot be instantiated. See also base class, concrete class.
  2. A class with at least one pure virtual function that is used as a base class for other classes.
abstract code unit (ACU)
A measurement used by the z/OS XL C/C++ compiler for judging the size of a function. The number of ACUs that comprise a function is proportional to its size and complexity.
abstract data type
A mathematical model that includes a structure for storing data and operations that can be performed on that data. Common abstract data types include sets, trees, and heaps.
access mode
  1. The manner in which files are referred to by a computer. See also dynamic access, sequential access.
  2. A form of access permitted for a file.
access specifier
A specifier that defines whether a class member is accessible in an expression or declaration. The three access specifiers are public, private, and protected.
ACU
See abstract code unit.
addressing mode (AMODE)
The attribute of a program module that identifies the addressing range in which the program entry point can receive control.
address space
The range of addresses available to a computer program or process. Address space can refer to physical storage, virtual storage, or both.
aggregate
  1. A structured collection of data objects that form a data type.
  2. In C++, an array or a class with no user-declared constructors, no private or protected non-static data members, no base classes, and no virtual functions.
alert
  1. A message or other indication that signals an event or an impending event.
  2. To cause the user's terminal to give some audible or visual indication that an error or some other event has occurred.
alert character
A character that in the output stream causes a terminal to alert its user by way of a visual or audible notification. The alert character is the character designated by a '\a' in the C and C++ languages. It is unspecified whether this character is the exact sequence transmitted to an output device by the system to accomplish the alert function.
alias
  1. An alternative name for an integrated catalog facility (ICF) user catalog, a file that is not a Virtual Storage Access Method (VSAM) file, or a member of a partitioned data set (PDS) or a partitioned data set extended (PDSE).
  2. An alternative name used instead of a primary name.
aliasing
A compilation process that attempts to determine what aliases exist, so that optimization does not result in incorrect program results.
alignment
The storing of data in relation to certain machine-dependent boundaries.
alternate code point
A syntactic code point that permits a substitute code point to be used. For example, the left brace ({) can be represented by X'B0' and also by X'C0'.
American National Standards Institute (ANSI)
A private, nonprofit organization whose membership includes private companies, U.S. government agencies, and professional, technical, trade, labor, and consumer organizations. ANSI coordinates the development of voluntary consensus standards in the U.S.
American Standard Code for Information Interchange (ASCII)
A standard code used for information exchange among data processing systems, data communication systems, and associated equipment. ASCII uses a coded character set consisting of 7-bit coded characters. See also Extended Binary Coded Decimal Interchange Code.
AMODE
See addressing mode.
angle bracket
Either the left angle bracket (<) or the right angle bracket (>). In the portable character set, these characters are referred to by the names <less-than-sign> and <greater-than-sign>.
anonymous union
An unnamed object whose type is an unnamed union.
ANSI
See American National Standards Institute.
AP
See application program.
API
See application programming interface.
application
One or more computer programs or software components that provide a function in direct support of a specific business process or processes.
application generator
An application development tool that creates applications, application components (panels, data, databases, logic, interfaces to system services), or complete application systems from design specifications.
application program (AP)
A complete, self-contained program, such as a text editor or a web browser, that performs a specific task for the user, in contrast to system software, such as the operating system kernel, server processes, and program libraries.
application programming interface (API)
An interface that allows an application program that is written in a high-level language to use specific data or functions of the operating system or another program.
archive library
A facility for grouping application-program object files. The archive library file, when created for application-program object files, has a special symbol table for members that are object files.
argument
A value passed to or returned from a function or procedure at run time.
argument declaration
See also parameter declaration.
arithmetic object
An integral object or objects having the float, double, or long double type.
array
In programming languages, an aggregate that consists of data objects, with identical attributes, each of which can be uniquely referenced by subscripting. See also scalar.
array element
One of the data items in an array.
ASCII
See American Standard Code for Information Interchange.
assembler
A computer program that converts assembly language instructions into object code.
Assembler H
An IBM licensed program that translates symbolic assembler language into binary machine language.
assembler user exit
A routine to tailor the characteristics of an enclave prior to its establishment.
assembly language
A symbolic programming language that represents machine instructions of a specific architecture.
assignment expression
An expression that assigns the value of the right operand expression to the left operand variable and has as its value the value of the right operand.
automatic call library
A group of modules that are used as secondary input to the binder to resolve external symbols left undefined after all the primary input has been processed. The automatic call library can contain: object modules, with or without binder control statements; load modules; and runtime routines.
automatic library call
The process by which the binder resolves external references by including additional members from the automatic call library.
automatic storage
Storage that is allocated on entry to a routine or block and is freed when control is returned. See also dynamic storage.
auto storage class specifier
A specifier that enables the programmer to define a variable with automatic storage; its scope is restricted to the current block.

B

background process
A process that does not require operator intervention but can be run by the computer while the workstation is used to do other work. See also foreground process.
background processing
A mode of program execution in which the shell does not wait for program completion before prompting the user for another command.
backslash
The character \. The backslash enables a user to escape the special meaning of a character. That is, typing a backslash before a character tells the system to ignore any special meaning the character might have.
base class
A class from which other classes or beans are derived. A base class may itself be derived from another base class. See also abstract class, class template definition.
binary expression
An expression containing two operands and one operator.
binary stream
A sequence of characters that corresponds on a one-to-one basis with the characters in the file. No character translation is performed on binary streams.
binder
  1. The z/OS program that processes the output of language translators and compilers into an executable program (a load module or program object). The binder replaces the linkage editor and batch loader. See also prelinker.
  2. See linkage editor.
bit field
A member of a structure or union that contains 1 or more named bits.
bitwise operator
An operator that manipulates the value of an object at the bit level.
blank character
  1. One of the characters that belong to the blank character class as defined via the LC_CTYPE category in the current locale. In the POSIX locale, a blank character is either a tab or a space character.
  2. A graphic representation of the space character.
block
  1. A string of data elements recorded, processed, or transmitted as a unit. The elements can be characters, words, or physical records.
  2. In programming languages, a compound statement that coincides with the scope of at least one of the declarations contained within it. A block may also specify storage allocation or segment programs for other purposes.
block statement
In the C or C++ languages, a group of data definitions, declarations, and statements that are located between a left brace and a right brace that are processed as a unit. The block statement is considered to be a single, C-language statement.
boundary alignment
The position in main storage of a fixed-length field, such as halfword or doubleword, which is aligned on an integral boundary for that unit of information. For example, a word boundary alignment stores the object in a storage address evenly divisible by four.
brace
Either of the characters left brace ({) and right brace (}). When an object is enclosed in braces, the left brace immediately precedes the object and the right brace immediately follows it.
bracket
Either of the characters left bracket ([) and right bracket (]).
break statement
A C or C++ control statement that contains the keyword break and a semicolon (;). It is used to end an iterative or a switch statement by exiting from it at any point other than the logical end. Control is passed to the first statement after the iteration or switch statement.
built-in
In programming languages, pertaining to a language object that is defined in the programming language specification.
built-in function
A function that is predefined by the compiler and whose code is incorporated directly into the compiled object rather than called at run time. See also function.
byte-oriented stream
A byte-oriented stream refers to a stream which only single byte input/output is allowed.

C

C++ language
An object-oriented high-level language that evolved from the C language. C++ takes advantage of the benefits of object-oriented technology such as code modularity, portability, and reuse.
C++ library
A system library that contains common C++ language subroutines for file access, memory allocation, and other functions.
callable service
A program service provided through a programming interface.
call chain
A trace of all active routines and subroutines, such as the names of routines and the locations of save areas, that can be constructed from information included in a system dump.
caller
A function that calls another function.
cancelability point
A specific point within the current thread that is enabled to solicit cancel requests.
carriage return character
A character that in the output stream indicates that printing should start at the beginning of the same physical line in which the carriage-return character occurred.
case clause
In a C or C++ switch statement, a CASE label followed by any number of statements.
case label
The word case followed by a constant expression and a colon. When the selector is evaluated to the value of the constant expression, the statements following the case label are processed.
cast expression
An expression that converts or reinterprets its operand.
cast operator
An operator that is used for explicit type conversions.
cataloged procedure
A set of job control language (JCL) statements that has been placed in a library and that is retrievable by name.
catch block
A block associated with a try block that receives control when an exception matching its argument is thrown. See also try block.
CCS
See coded character set.
character
  1. A sequence of one or more bytes representing a single graphic symbol or control code.
  2. In a computer system, a member of a set of elements that is used for the representation, organization, or control of data.
character class
A named set of characters sharing an attribute associated with the name of the class. The classes and the characters that they contain are dependent on the value of the LC_CTYPE category in the current locale.
character constant
The actual character value (a symbol, quantity, or constant) in a source program that is itself data, instead of a reference to a field that contains the data.
character set
A defined set of characters with no coded representation assumed that can be recognized by a configured hardware or software system. A character set can be defined by alphabet, language, script, or any combination of these items.
character special file
An interface file that provides access to an input or output device, which uses character I/0 instead of block I/0.
character string
A contiguous sequence of characters terminated by and including the first null byte.
child
A node that is subordinate to another node in a tree structure. Only the root node is not a child.
child enclave
The nested enclave created as a result of certain commands being issued from a parent enclave. See also nested enclave, parent enclave.
child process
A process that is created by a parent process and that shares the resources of the parent process to carry out a request.
CICS
An IBM licensed program that provides online transaction-processing services and management for business applications.
C language
A language used to develop application programs in compact, efficient code that can be run on different types of computers with minimal change.
class
In C++, a user-defined data type. A class data type can contain both data representations (data members) and functions (member functions).
class key
One of the C++ keywords: class, struct, and union.
class library
In object-oriented programming, a collection of prewritten classes or coded templates, any of which can be specified and used by a programmer when developing an application.
class name
A unique identifier of a class type that becomes a reserved word within its scope.
class scope
The scope of C++ class members.
class template
A blueprint describing how a set of related C++ classes can be constructed.
class template declaration
A class template declaration introduces the name of a class template and specifies its template parameter list. A class template declaration may optionally include a class template definition.
class template definition
A definition that describes various characteristics of the class types that are its specializations. These characteristics include the names and types of data members of specializations, the signatures and definitions of member functions, accessibility of members, and base classes. See also base class.
C library
A system library that contains common C language subroutines for file access, string operations, character operations, memory allocation, and other functions.
client program
A program that uses a C++ class.
CLIST
See command list.
COBOL
See Common Business Oriented Language.
coded character set (CCS)
A set of unambiguous rules that establishes a character set and the one-to-one relationships between the characters of the set and their coded representations.
code element set
The result of applying rules that map a numeric code value to each element of a character set. An element of a character set may be related to more than one numeric code value but the reverse is not true. However, for state-dependent encodings the relationship between numeric code values to elements of a character set may be further controlled by state information. The character set may contain fewer elements than the total number of possible numeric code values; that is, some code values may be unassigned. X/Open.
code generator
The part of the compiler that physically generates the object code.
code page
A particular assignment of code points to graphic characters. Within a given code page, a code point can have only one specific meaning. A code page also identifies how undefined code points are handled. See also code point.
code point
  1. An identifier in an alert description that represents a short unit of text. The code point is replaced with the text by an alert display program.
  2. A unique bit pattern that represents a character in a code page. See also code page.
collating element
The smallest entity used to determine the logical ordering of strings. A collating element consists of either a single character, or two or more characters collating as a single entity. The value of the LC_COLLATE category in the current locale determines the current set of collating elements. See also collating sequence.
collating sequence
The relative ordering of collating elements as determined by the setting of the LC_COLLATE category in the current locale. The character order, as defined for the LC_COLLATE category in the current locale, defines the relative order of all collating elements, such that each element occupies a unique position in the order.
collation
The logical ordering of characters and strings according to defined rules.
collection
An abstract class without any ordering, element properties, or key properties.
Collection Class Library
A complete set of abstract data structure such as trees, stacks, queues, and linked lists.
column position
A unit of horizontal measure related to characters in a line. It is assumed that each character in a character set has an intrinsic column width independent of any output device. Each printable character in the portable character set has a column width of one. The standard utilities, when used as described in this document set, assume that all characters have integral column widths. The column width of a character is not necessarily related to the internal representation of the character (numbers of bits or bytes). The column position of a character in a line is defined as one plus the sum of the column widths of the preceding characters in the line. Column positions are numbered starting from 1. X/Open.
comma expression
An expression that contains two operands separated by a comma. Although the compiler evaluates both operands, the value of the right operand is the value of the expression. If the left operand produces a value, the compiler discards this value.
command
A request to perform an operation or run a program. When parameters, arguments, flags, or other operands are associated with a command, the resulting character string is a single command.
command list (CLIST)
A language for performing TSO tasks.
COMMAREA
See communication area.
Common Business Oriented Language (COBOL)
A high-level programming language that is used primarily for commercial data processing.
communication area (COMMAREA)
A CICS area that is used to pass data between tasks that communicate with a given terminal. The area can also be used to pass data between programs within a task.
compilation unit
A portion of a computer program sufficiently complete to be compiled correctly.
compiler option
A keyword that can be specified to control certain aspects of compilation. Compiler options can control the nature of the load module generated by the compiler, the types of printed output to be produced, the efficient use of the compiler, and the destination of error messages.
complete class name
The complete qualification of a nested C++ class name including all enclosing class names and namespaces.
Complex Mathematics Library
A C++ class library that provides the facilities to manipulate complex numbers and perform standard mathematical operations on them.
concrete class
  1. A class defining objects that can be created.
  2. A class that is not abstract.
condition
  1. An expression that can be evaluated as true, false, or unknown. It can be expressed in natural language text, in mathematically formal notation, or in a machine-readable language.
  2. An exception that has been enabled, or recognized, by the Language Environment and thus is eligible to activate user and language condition handlers. Conditions can be detected by the hardware/operating system and result in an interrupt. They can also be detected by language-specific generated code or language library code.
conditional expression
A compound expression that contains a condition (the first expression), an expression to be evaluated if the condition has a nonzero value (the second expression), and an expression to be evaluated if the condition has the value zero (the third expression).
condition handler
A user-written routine or language-specific routine (such as a PL/ION-unit or C signal() function call) invoked by the Language Environment condition manager to respond to conditions.
condition manager
The condition manager is the part of the common execution environment that manages conditions by invoking various user-written and language-specific condition handlers.
condition token
In Language Environment, a data type consisting of 96 bits (12 bytes). The condition token contains structured fields that indicate various aspects of a condition including the severity, the associated message number, and information that is specific to a given instance of the condition.
constant
A language element that specifies an unchanging value. Constants are classified as string constants or numeric constants.
constant expression
An expression that has a value that can be determined during compilation and that does not change during the running of the program.
constant propagation
An optimization technique where constants used in an expression are combined and new ones are generated. Mode conversions are done to allow some intrinsic functions to be evaluated at compile time.
constructed reentrancy
The attribute of applications that contain external data and require additional processing to make them reentrant. See also natural reentrancy.
constructor
A special C++ class member function that has the same name as the class and is used to create an object of that class.
control character
A character whose occurrence in a particular context initiates, modifies, or stops a control function.
controlling process
A session leader that has control of a terminal.
controlling terminal
The active workstation from which the process group for that process was started. Each session may have at most one controlling terminal associated with it, and a controlling terminal is associated with exactly one session.
control section (CSECT)
The part of a program specified by the programmer to be a relocatable unit, all elements of which are to be loaded into adjoining main storage locations.
control statement
In programming languages, a statement that is used to interrupt the continuous sequential processing of programming statements. Conditional statements such as IF, PAUSE, and STOP are examples of control statements.
conversion
  1. In programming languages, the transformation between values that represent the same data item but belong to different data types. Information may be lost because of conversion since accuracy of data representation varies among different data types.
  2. The process of changing from one form of representation to another. Changing a code point that is assigned to a character in one code page to its corresponding code point in another code page is an example of conversion.
conversion function
A C++ member function that specifies a conversion from its class type to another type.
Coordinated Universal Time (UTC)
The international standard of time that is kept by atomic clocks around the world.
copy constructor
A C++ constructor used to make a copy of a class object from another class object of the same class type.
cross-compiler
A compiler that produces executable files that run on a platform other than the one on which the compiler is installed.
CSECT
See control section.
current working directory
See working directory.
cursor
A reference to an element at a specific position in a data structure.

D

data abstraction
A data type with a private representation and a public set of operations (functions or operators) which restrict access to that data type to that set of operations. The C++ language uses the concept of classes to implement data abstraction.
data definition (DD)
A program statement that describes the features of, specifies relationships of, or establishes the context of data. A data definition reserves storage and can provide an initial value.
data definition name (ddname)
The name of a data definition (DD) statement that corresponds to a data control block that contains the same name.
data definition statement (DD statement)
A job control statement that is used to define a data set for use by a batch job step, started task or job, or an online user.
data member
The smallest possible piece of complete data. Elements are composed of data members.
data object
An element of data structure such as a file, an array, or an operand that is needed for the execution of an application.
data set
The major unit of data storage and retrieval, consisting of a collection of data in one of several prescribed arrangements and described by control information to which the system has access.
data stream
The commands, control codes, data, or structured fields that are transmitted between an application program and a device such as printer or nonprogrammable display station.
data structure
In Open Source Initiative (OSI), the syntactic structure of symbolic expressions and their storage allocation characteristics.
data type
A category that identifies the mathematical qualities and internal representation of data and functions.
Data Window Services (DWS)
Services provided as part of the Callable Services Library that allow manipulation of data objects such as VSAM linear data sets and temporary data objects known as TEMPSPACE.
DBCS
See double-byte character set.
DCT
See destination control table.
DD
See data definition.
ddname
See data definition name.
DD statement
See data definition statement.
dead code
Code that is never referenced, or that is always branched over.
dead store
A store into a memory location that will later be overwritten by another store without any intervening loads. In this case, the earlier store can be deleted.
decimal constant
A numerical data type used in standard arithmetic operations. Decimal constants can contain any digits 0 through 9. See also integer constant.
decimal overflow
A condition that occurs when one or more nonzero digits are lost because the destination field in a decimal operation is too short to contain the results.
declaration
  1. In the C and C++ languages, a description that makes an external object or function available to a function or a block statement.
  2. A statement that establishes the names and characteristics of data objects and functions used in a program.
default argument
An argument that is declared with default values in a C++ function prototype or declaration. If a call to the function omits this argument, a default value is used. An arguments with a default value must be the trailing argument in a function prototype argument list.
default clause
In the C or C++ languages, within a switch statement, the keyword default followed by a colon, and one or more statements. When the conditions of the specified case labels in the switch statement do not hold, the default clause is chosen.
default constructor
A C++ constructor that takes no arguments, or if it takes any arguments, all its arguments have default values.
default initialization
The initial value assigned to a data object by the compiler if no initial value is specified by the programmer. In C language, external and static variables receive a default initialization of zero, while the default initialization for auto and register variables is undefined.
definition
A declaration that reserves storage and can provide an initial value for a data object or define a function.
degree
The number of children of a node.
demangling
The conversion of mangled C++ names back to their original source code names to make program debugging easier. See also mangling.
dereference
In the C and C++ languages, to apply the unary operator * to a pointer to access the object the pointer points to. See also indirection.
derivation
The process of deriving a C++ class from an existing class, called a base class.
derived class
See base class.
descriptor
A PL/I control block that holds information such as string lengths, array subscript bounds, and area sizes, and is passed from one PL/I routine to another during run time.
destination control table (DCT)
A table describing each of the transient data destinations used in CICS. This table contains an entry for each extrapartition, intrapartition, and indirect destination.
destructor
A special member function of a class with the same name as the class with a ~ (tilde) preceding the name. You cannot specify arguments or a return type for this function. A destructor "cleans up" after an object by doing such things as freeing any storage that was dynamically allocated when the object was created.
device
A piece of equipment such as a workstation, printer, disk drive, tape unit, or remote system.
difference
Given two sets A and B, the set of all elements contained in A but not in B (A-B).
digraph
A combination of two keystrokes used to represent unavailable characters in a C or C++ source program. Digraphs are read as tokens during the preprocessor phase.
directive
A control statement that directs the operation of a feature and is recognized by a preprocessor or other tool. See also pragma.
directory
  1. The part of a partitioned data set that describes the members in the data set.
  2. In a hierarchical file system, a grouping of related files.
display
To direct the output to the user's terminal. If the output is not directed to the terminal, the results are undefined.
DLL
See dynamic link library.
do statement
For the C and C++ compilers, a looping statement that contains the keyword do, followed by a statement (the action), the keyword while, and an expression in parentheses (the condition).
dot
A symbol (.) that indicates the current directory in a relative path name. See also period.
double-byte character set (DBCS)
A set of characters in which each character is represented by 2 bytes. These character sets are commonly used by national languages, such as Japanese and Chinese, that have more symbols than can be represented by a single byte. See also single-byte character set.
double-precision
Pertaining to the use of two computer words to represent a number in accordance with the required precision.
doubleword
A contiguous sequence of bits or characters that comprises two computer words and is capable of being addressed as a unit. See also halfword, word.
DSA
See dynamic storage area.
DWS
See Data Window Services.
dynamic
Pertaining to an operation that occurs at the time it is needed rather than at a predetermined or fixed time.
dynamic access
A process where records can be accessed sequentially or randomly, depending on the form of the input/output request. See also access mode.
dynamic allocation
Assignment of system resources to a program when the program is executed rather than when it is loaded into main storage.
dynamic binding
The act of resolving references to external variables and functions at run time. In C++, dynamic binding is supported by using virtual functions.
dynamic link library (DLL)
A file containing executable code and data bound to a program at load time or run time, rather than during linking. The code and data in a DLL can be shared by several applications simultaneously. See also library.
dynamic storage
An area of storage that is explicitly allocated by a program or procedure while it is running. See also automatic storage.
dynamic storage area (DSA)
A type of storage allocation in which storage is assigned to a program or application at run time.

E

EBCDIC
See Extended Binary Coded Decimal Interchange Code.
effective group ID
An attribute of a process that is used in determining various permissions, including file access permissions. This value is subject to change during the process lifetime.
elaborated type specifier
Typically used in C++ in an incomplete class declaration or to qualify types that are otherwise hidden.
element
The smallest unit in a table, array, list, set, or other structure. Examples of an element are a value in a list of values and a data field in an array.
element equality
A relation that determines if two elements are equal.
element occurrence
A single instance of an element in a collection. In a unique collection, element occurrence is synonymous with element value.
element value
All the instances of an element with a particular value in a collection. In a non-unique collection, an element value may have more than one occurrence. In a unique collection, element value is synonymous with element occurrence.
else clause
The part of an if statement that contains the keyword 'else' followed by a statement. The else clause provides an action that is started when the if condition evaluates to a value of 0 (false).
empty line
A line consisting of only a newline character. X/Open.
empty string
A character array whose first element is a null character.
encapsulation
In object-oriented programming, the technique that is used to hide the inherent details of an object, function, or class from client programs.
entry point
The address or label of the first instruction processed or entered in a program, routine, or subroutine.There might be a number of different entry points, each corresponding to a different function or purpose.
enum constant
See enumeration constant.
enumeration constant (enum constant)
In the C or C++ language, an identifier, with an associated integer value, defined in an enumerator. An enumeration constant may be used anywhere an integer constant is allowed.
enumeration data type
In the Fortran, C, and C++ language, a data type that represents a set of values that a user defines.
enumeration tag
The identifier that names an enumeration data type.
enumeration type
A data type that defines a set of enumeration constants. In the C++ language, an enumeration type is a distinct data type that is not an integral type.
enumerator
An enumeration constant and its associated value.
equivalence class
A grouping of characters or character strings that are considered equal for purposes of collation. For example, many languages place an uppercase character in the same equivalence class as its lowercase form, but some languages distinguish between accented and unaccented character forms for the purpose of collation.
escape sequence
A string of bit combinations that is used to escape from normal data, such as text code points, into control information.
exception
A condition or event that cannot be handled by a normal process.
exception handler
  1. A set of routines that responds to an abnormal condition. An exception handler is able to interrupt and to resume the normal running of processes.
  2. In C++, the catch block that catches exceptions when they are thrown from a function enclosed in a try block.
executable file
A file that contains programs or commands that perform operations on actions to be taken.
executable program
A program in a form suitable for execution by a computer. The program can be an application or a shell script.
Extended Binary Coded Decimal Interchange Code (EBCDIC)
A coded character set of 256 8-bit characters developed for the representation of textual data. See also American Standard Code for Information Interchange.
extended-precision
Pertains to the use of more than two computer words to represent a floating point number in accordance with the required precision. For example, in z/OS, four computer words are used for an extended-precision number.
extension
An element or function not included in the standard language.
extrapartition destination
In CICS, a type of transient data queue. Extrapartition destinations can be accessed either within the CICS environment or outside of CICS; they can be defined as either input or output.
Extra Performance Linkage (XPLINK)
A type of call linkage that can improve performance in an environment of frequent calls between small functions.

F

FIFO special file
A type of file with the property that data written to such a file is read on a first-in-first-out (FIFO) basis.
file descriptor
A positive integer or a data structure that uniquely identifies an open file for the purpose of file access.
file mode
An object containing the file permission bits and other characteristics of a file.
file permission bit
Information about a file that is used, along with other information, to determine whether a process has read, write, or execute permission to a file. The use of file permission bits is described in file access permissions.
file scope
A property of a file name that is declared outside all blocks, classes, and function declarations and that can be used after the point of declaration in a source file.
filter
A command that reads standard input data, modifies the data, and sends it to standard output. A pipeline usually has several filters.
flat collection
A collection that has no hierarchical structure.
float constant
  1. A constant representing a non-integral number.
  2. A number containing a decimal point, an exponent, or both a decimal point and an exponent. The exponent contains an "e" or "E," an optional sign (+ or -), and one or more digits (0 through 9).
footprint
The amount of computer storage that is occupied by a computer program. For example, if a program occupies a large amount of storage, it has a large footprint.
foreground process
A process that must be completed before another command is issued. See also background process.
foreground process group
A group whose member processes have privileges that are denied to background processes when the controlling terminal is being accessed. Each controlling terminal can have only one foreground process group.
form-feed character
A character in the output stream that indicates that printing should start on the next page of an output device. The form-feed character is designated by '\f' in the C and C++ language. If the form-feed character is not the first character of an output line, the result is unspecified. X/Open.
for statement
A looping statement that contains the word for followed by a list of expressions enclosed in parentheses (the condition) and a statement (the action). Each expression in the parenthesized list is separated by a semicolon, which cannot be omitted.
forward declaration
A declaration of a class or function made earlier in a compilation unit, so that the declared class or function can be used before it has been defined.
freestanding application
  1. An application that is created to run without the run-time environment or library with which it was developed.
  2. A z/OS C/C++ application that does not use the services of the dynamic z/OS C/C++ run-time library or of the Language Environment. Under z/OS C support, this ability is a feature of the System Programming C support.
free store
Dynamically allocated memory. New and delete are used to allocate and deallocate free store.
friend class
A class in which all member functions are granted access to the private and protected members of another class. It is named in the declaration of another class and uses the keyword friend as a prefix to the class.
function
A named group of statements that can be called and evaluated and can return a value to the calling statement. See also built-in function.
function call
An expression that transfers the path of execution from the current function to a specified function (the called function). A function call contains the name of the function to which control is transferred and a parenthesized list of values.
function declarator
The part of a function definition that names the function, provides additional information about the return value of the function, and lists the function parameters.
function definition
The complete description of a function. A function definition contains an optional storage class specifier, an optional type specifier, a function declarator, optional parameter declarations, and a block statement (the function body).
function prototype
A function declaration that provides type information for each parameter. It is the first line of the function (header) followed by a semicolon (;). The declaration is required by the compiler at the time that the function is declared, so that the compiler can check the type.
function scope
Labels that are declared in a function have function scope and can be used anywhere in that function after their declaration.
function template
A detailed plan that describes the construction of a set of related individual C++ functions.

G

GCC
See GNU Compiler Collection.
GDDM
See Graphical Data Display Manager.
generalization
The derivation of the definition of a class, function, or static data member from a template. An instantiation of a template function is a generalization.
Generalized Object File Format (GOFF)
This object module format extends the capabilities of object modules so that they can contain more information. It is required for XPLINK.
generic class
See class template.
global
Pertaining to information available to more than one program or subroutine. See also local.
global variable
A symbol defined in one program module that is used in other program modules that are independently compiled.
GMT
See Greenwich mean time.
GNU Compiler Collection (GCC)
An open source collection of compilers supporting C, C++, Objective-C, Ada, Java, and Fortran.
GOFF
See Generalized Object File Format.
Graphical Data Display Manager (GDDM)
An IBM computer-graphics system that defines and displays text and graphics for output on a display or printer.
graphic character
A visual representation of a character, other than a control character, that is normally produced by writing, printing, or displaying.
Greenwich mean time (GMT)
The mean solar time at the meridian of Greenwich, England.

H

halfword
A contiguous sequence of bits or characters that constitutes half a computer word and can be addressed as a unit. See also doubleword, word.
hash function
A function that determines which category, or bucket, to put an element in. A hash function is needed when implementing a hash table.
hash table
  1. A data structure that divides all elements into (preferably) equal-sized categories, or buckets, to allow quick access to the elements. The hash function determines which bucket an element belongs in.
  2. A table of information that is accessed by way of a shortened search key (the hash value). The use of a hash table minimizes average search time.
header file
See include file.
heap storage
An area of storage used for allocation of storage that has a lifetime that is not related to the execution of the current routine. The heap consists of the initial heap segment and zero or more increments.
hexadecimal constant
A constant, usually starting with special characters, that contains only hexadecimal digits.
High Level Assembler
An IBM licensed program that translates symbolic assembler language into binary machine language.
hiperspace memory file
A type of file that is stored in a single buffer in an address space, with the rest of the data being kept in a hiperspace. In contrast, for regular files, all the file data is stored in a single address space.
hook
A location in a compiled program where the compiler has inserted an instruction that allows programmers to interrupt the program (by setting breakpoints) for debugging purposes.
hybrid code
Program statements that have not been internationalized with respect to code page, especially where data constants contain variant characters. Such statements can be found in applications written in older implementations of MVS, which required syntax statements to be written using code page IBM-1047 exclusively. Such applications cannot be converted from one code page to another using iconv().

I

ID
See identifier.
identifier (ID)
One or more characters used to identify or name a data element and possibly to indicate certain properties of that data element.
if statement
A conditional statement that specifies a condition to be tested and the action to be taken if the condition is satisfied.
ILC
  1. See interlanguage communication.
  2. See interlanguage call.
implementation-defined
Pertaining to behavior that is defined by the compiler rather than by a language standard. Programs that rely on implementation-defined behavior may behave differently when compiled with different compilers. See also undefined behavior.
IMS
See Information Management System.
include directive
A preprocessor directive that causes the preprocessor to replace the statement with the contents of a specified file.
include file
A text file that contains declarations that are used by a group of functions, programs, or users.
incomplete class declaration
A C++ class declaration that does not define any members of a class. Until a class is fully declared or defined, you can use the class name only where the size of the class is not required.
incomplete type
A type that has no value or meaning when it is first declared. There are three incomplete types: void, arrays of unknown size and structures, and unions of unspecified content.
indirect destination
In CICS, a type of transient data destination that points to another destination within the destination control table, rather than directly to a queue.
indirection
  1. A mechanism for connecting objects by storing, in one object, a reference to another object. See also dereference.
  2. In the C and C++ languages, the application of the unary operator * to a pointer to access the object to which the pointer points.
indirection class
See reference class.
induction variable
A controlling variable of a loop.
Information Management System (IMS)
Any of several system environments that have a database manager and transaction processing that can manage complex databases and terminal networks.
inheritance
An object-oriented programming technique in which existing classes are used as a basis for creating other classes. Through inheritance, more specific elements incorporate the structure and behavior of more general elements.
initial heap
A heap that is controlled by the HEAP run-time option and designated by a heap_id of 0.
initializer
An expression used to initialize data objects. In the C++ language, there are three types of initializers: an expression followed by an assignment operator initializes fundamental data type objects or class objects that have copy constructors; an expression enclosed in braces ( { } ) initializes aggregates; and a parenthesized expression list initializes base classes and members using constructors
inline
To replace a function call with a copy of the function's code during compilation.
inline function
A function whose actual code replaces a function call. A function that is both declared and defined in a class definition is an example of an inline function. Another example is one which you explicitly declared inline by using the keyword inline. Both member and non-member functions can be inlined.
input stream
A sequence of control statements and data submitted to an operating system by an input device.
instance
  1. In object-oriented programming, a region of storage that contains a value or group of values.
  2. A specific occurrence of an object that belongs to a class. See also object.
instantiate
To create or generate a particular instance or object of a data type. For example, an instance box1 of class box could be instantiated with the declaration: box box1
instruction
A program statement that specifies an operation to be performed by the computer, along with the values or locations of operands. This statement represents the programmer's request to the processor to perform a specific operation.
instruction scheduling
An optimization technique that reorders instructions in code to minimize execution time.
integer constant
A decimal, octal, or hexadecimal constant. See also decimal constant.
integral object
A character object, an object having an enumeration type, an object having variations of the type int, or an object that is a bit field.
Interactive System Productivity Facility (ISPF)
An IBM licensed program that serves as a full-screen editor and dialog manager. Used for writing application programs, it provides a means of generating standard screen panels and interactive dialogs between the application programmer and the terminal user.
interlanguage call (ILC)
A call to a procedure or function made by a program written in one language to a procedure or function coded in a different language.
interlanguage communication (ILC)
The ability of routines written in different programming languages to communicate. ILC support enables the application writer to readily build applications from component routines written in a variety of languages.
interoperability
The ability of a computer or program to work with other computers or programs.
interprocess communication (IPC)
The process by which programs send messages to each other. Sockets, semaphores, signals, and internal message queues are common methods of interprocess communication.
intrapartition destination
In CICS, a type of transient data queue used subsequently as input data to another task within CICS.
I/O Stream Library
A class library that provides the facilities to deal with many varieties of input and output.
IPC
See interprocess communication.
ISPF
See Interactive System Productivity Facility.
iteration
The repetition of a set of computer instructions until a condition is satisfied.

J

JCL
See job control language.
job control language (JCL)
A command language that identifies a job to an operating system and describes the job requirements.

K

kernel
The part of an operating system that contains programs for such tasks as input/output, management and control of hardware, and the scheduling of user tasks.
keyword
  1. One of the predefined words of a programming language, artificial language, application, or command. See also operand, parameter.
  2. A symbol that identifies a parameter in job control language (JCL).

L

label
An identifier within or attached to a set of data elements.
Language Environment
An element of z/OS that provides a common runtime environment and common runtime services for C/C++, COBOL, PL/I, and Fortran applications.
last element
The element visited last in an iteration over a collection. Each collection has its own definition for last element. For example, the last element of a sorted set is the element with the largest value.
leaf
In a tree, an entry or node that has no children.
library
  1. A collection of model elements, including business items, processes, tasks, resources, and organizations.
  2. A set of object modules that can be specified in a link command.
linkage
Refers to the binding between a reference and a definition. A function has internal linkage if the function is defined inline as part of the class, is declared with the inline keyword, or is a non-member function declared with the static keyword. All other functions have external linkage.
linkage editor
A computer program for creating load modules from one or more object modules or load modules by resolving cross-references among the modules and, if necessary, adjusting addresses.
linker
A program that resolves cross-references among separately compiled object modules and then assigns final addresses to create a single executable program.
link pack area (LPA)
The portion of virtual storage below 16 MB that contains frequently used modules.
literal
A symbol or a quantity in a source program that is itself data, rather than a reference to data.
loader
A program that copies an executable file into main storage so that the file can be run.
load module
A program in a form suitable for loading into main storage for execution.
local
  1. Pertaining to information that is defined and used only in one subdivision of a computer program. See also global.
  2. In programming languages, pertaining to the relationship between a language object and a block such that the language object has a scope contained in that block.
local custom
A convention of a geographical area or territory for such things as date, time, and currency formats. X/Open.
locale
A setting that identifies language or geography and determines formatting conventions such as collation, case conversion, character classification, the language of messages, date and time representation, and numeric representation.
local scope
A name declared in a block that has local scope and can only be used in that block.
loop unrolling
An optimization that increases the step of a loop, and duplicates the expressions within a loop to reflect the increase in the step. This can improve instruction scheduling and memory access time.
LPA
See link pack area.
lvalue
An expression that represents a data object that can be viewed, tested, and changed. An lvalue is usually the left operand in an assignment expression.

M

macro
An instruction that causes the execution of a predefined sequence of instructions.
macro call
See macro.
main function
A function that has the identifier main. Each program must have exactly one function named main. The main function is the first user function that receives control when a program starts to run.
makefile
In UNIX, a text file containing a list of an application's parts. The make utility uses makefiles to maintain application parts and dependencies.
make utility
A utility that maintains all of the parts and dependencies for an application. The make utility uses a makefile to keep the parts of a program synchronized. If one part of an application changes, the make utility updates all other files that depend on the changed part.
mangled name
An external name, such as a function or variable name, which has been encoded during compilation to include type and scope information.
mangling
The encoding, during compilation, of C++ identifiers such as function and variable names to include type and scoping information. The linker uses these mangled names for type-safe linkage. See also demangling.
manipulator
A value that can be inserted into streams or extracted from streams to affect or query the behavior of the stream.
member
A C++ data object or function in a structure, union or class. Members can also be classes, enumerations, bit fields and type names.
member function
A C++ operator or function that is declared as a member of a class. A member function has access to the private and protected data members and member functions of an object of its class.
method
See member function.
method file
  1. For ASCII locales, a file that defines the method functions to be used by C runtime locale-sensitive interfaces. A method file also identifies where the method functions can be found. IBM supplies several method files used to create its standard set of ASCII locales. Other method files can be created to support customized or user-created code pages. Such customized method files replace IBM-supplied charmap method functions with user-written functions.
  2. A file that allows users to indicate to the localedef utility where to look for user-provided methods for processing user-designed code pages.
migrate
To install a new version or release of a program to replace an earlier version or release.
module
A program unit that is discrete and identifiable with respect to compiling, combining with other units, and loading.
multibyte character
A mixture of single-byte characters from a single-byte character set and double-byte characters from a double-byte character set.
multibyte control
See escape sequence.
multicharacter collating element
A sequence of two or more characters that collate as an entity. For example, in some coded character sets, an accented character is represented by a non-spacing accent, followed by the letter. Other examples are the Spanish elements ch and ll. X/Open.
multiple inheritance
An object-oriented programming technique implemented in C++ through derivation, in which the derived class inherits members from more than one base class.
multiprocessor
A processor complex that has more than one central processor.
multitasking
A mode of operation in which two or more tasks can be performed at the same time.
mutex
See mutual exclusion.
mutex attribute object
A type of attribute object with which a user can manage mutual exclusion (mutex) characteristics by defining a set of variables to be used during its creation. A mutex attribute object eliminates the need to redefine the same set of characteristics for each mutex object created. See also mutual exclusion.
mutex object
An identifier for a mutual exclusion (mutex).
mutual exclusion (mutex)
A flag used by a semaphore to protect shared resources. The mutex is locked and unlocked by threads in a program. See also mutex attribute object.

N

namespace
A category used to group similar types of identifiers.
natural reentrancy
The attribute of applications that contain no static external data and do not require additional processing to make them reentrant. See also constructed reentrancy.
nested class
A C++ class defined within the scope of another class.
nested enclave
A new enclave created by an existing enclave. The nested enclave that is created must be a new main routine within the process. See also child enclave, parent enclave.
newline character (NL)
A control character that causes the print or display position to move down one line.
nickname
See alias.
NL
See newline character.
nonprinting character
See control character.
NUL
See null character.
null character (NUL)
A control character with the value of X'00' that represents the absence of a displayed or printed character.
null pointer
The value that is obtained by converting the number 0 into a pointer; for example, (void *) 0. The C and C++ languages guarantee that this value will not match that of any legitimate pointer, so it is used by many functions that return pointers to indicate an error.
null statement
A statement that consists of a semicolon.
null string
A character or bit string with a length of zero.
null value
A parameter position for which no value is specified.
null wide-character code
A wide-character code with all bits set to zero.
number sign
The character #, which is also referred to as the hash sign.

O

object
  1. A region of storage. An object is created when a variable is defined. An object is destroyed when it goes out of scope. See also instance.
  2. In object-oriented design or programming, a concrete realization (instance) of a class that consists of data and the operations associated with that data. An object contains the instance data that is defined by the class, but the class owns the operations that are associated with the data.
object module
A set of instructions in machine language that is produced by a compiler or assembler from a subroutine or source module and can be input to the linking program. The object module consists of object code.
object-oriented programming
A programming approach based on the concepts of data abstraction and inheritance. Unlike procedural programming techniques, object-oriented programming concentrates not on how something is accomplished but instead on what data objects compose the problem and how they are manipulated.
octal constant
The digit 0 (zero) followed by any digits 0 through 7.
open file
A file that is currently associated with a file descriptor.
operand
An entity on which an operation is performed.
operating system (OS)
A collection of system programs that control the overall operation of a computer system.
operator function
An overloaded C++ operator that is either a member of a class or takes at least one argument that is a class type or a reference to a class type.
operator precedence
In programming languages, an order relationship that defines the sequence of the application of operators with an expression.
orientation
The orientation of a stream refers to the type of data which may pass through the stream. A stream without orientation is one on which no stream I/O has been performed.
OS
See operating system.
overflow
The condition that occurs when data cannot fit in the designated field.
overlay
The technique of repeatedly using the same areas of internal storage during different stages of a program. Unions are used to accomplish this in C and C++.
overloading
In object-oriented programming, the capability of an operator or method to have different meanings depending on the context. For example, in C++, a user can redefine functions and most standard operators when the functions and operators are used with class types. The method name or operator remains the same, but the method parameters differ in type, number, or both. This difference is collectively called the function's or the operator's signature and each signature requires a separate implementation.

P

parameter (parm)
A value or reference passed to a function, command, or program that serves as input or controls actions. The value is supplied by a user or by another program or process. See also keyword, operand.
parameter declaration
The description of a value that a function receives. A parameter declaration determines the storage class and the data type of the value. See also argument declaration.
parent enclave
The enclave that issues a call to system services or language constructs to create a nested (or child) enclave. See also child enclave, nested enclave.
parent process
A process that is created to carry out a request or set of requests. The parent process, in turn, can create child processes to process requests for the parent.
parent process ID (PPID)
An attribute of a new process identifying the parent of the process. The parent process ID of a process is the process ID of its creator for the lifetime of the creator. After the creator's lifetime has ended, the parent process ID is the process ID of an implementation-dependent system process.
parm
See parameter.
partitioned concatenation
The allocation of partitioned data sets (PDSs), partitioned data sets extended (PDSEs), UNIX file directories, or any combination of these such that the basic partitioned access method (BPAM) retrieves them as a single data set.
partitioned data set (PDS)
A data set on direct access storage that is divided into partitions, called members, each of which can contain a program, part of a program, or data. See also sequential data set.
partitioned data set extended (PDSE)
A data set that contains an indexed directory and members that are similar to the directory and members of partitioned data sets (PDSs). See also library.
path name
A name that specifies all directories leading to a file plus the file name itself.
path name resolution
The process of resolving a path name to a particular file in a file hierarchy. There may be multiple path names that resolve to the same file. X/Open.
pattern
A sequence of characters used either with regular expression notation or for path name expansion, as a means of selecting various characters strings or path names, respectively. The syntaxes of the two patterns are similar, but not identical.
PDS
See partitioned data set.
PDSE
See partitioned data set extended.
period
The symbol ".". The term dot is used for the same symbol when referring to a web address or file extension. This character is named <period> in the portable character set. See also dot.
permission
The ability to access a protected object, such as a file or directory. The number and meaning of permissions for an object are defined by the access control list.
persistent environment
An environment that once created by the user may be used repeatedly without incurring the overhead of initialization and termination for each call. The environment remains available until explicitly terminated by the user.
PGID
See process group ID.
PID
See process ID.
platform
The combination of an operating system and hardware that makes up the operating environment in which a program runs.
pointer
A data element or variable that holds the address of a data object or a function. See also scalar.
pointer class
A class that implements pointers.
pointer to member
An identifier that is used to access the address of nonstatic members of a C++ class.
polymorphism
An object-oriented programming characteristic that allows a method to perform differently, depending on the class that implements it. Polymorphism allows a subclass to override an inherited method without affecting the method of the parent class. Polymorphism also enables a client to access two or more implementations of an object from a single interface.
portability
  1. The ability of a program to run on more than one type of computer system without modification.
  2. The ability of a programming language to compile successfully on different operating systems without requiring changes to the source code.
portable character set
A set of characters, specified in POSIX 1003.2, section 4, that must be supported by conforming implementations.
portable file name character set
The set of characters from which portable file names must be constructed to be portable across implementations conforming to the ISO POSIX-1 standard and to ISO/IEC 9945.
positional parameter
A parameter that must appear in a specified location, relative to other parameters.
PPID
See parent process ID.
pragma
A standardized form of comment which has meaning to a compiler. A pragma usually conveys non-essential information, often intended to help the compiler to optimize the program. See also directive.
precedence
The priority system for grouping different types of operators with their operands.
predefined macro
In C/C++, an identifier predefined by the compiler, which will be expanded by the preprocessor during compilation.
preinitialization
A process by which an environment or library is initialized once and can then be used repeatedly to avoid the inefficiency of initializing the environment or library each time it is needed.
prelinker
A utility that preprocesses an object for certain programs. See also binder.
preprocessor
A routine that performs initial processing and translation of source code or data prior to compiling the source code or processing the data in another program such as an emulator.
preprocessor directive
In the C and C++ languages, a statement that begins with the symbol # and is interpreted by the preprocessor during compilation.
preprocessor statement
In the C and C++ languages, a statement that begins with the symbol # and contains instructions that the preprocessor can interpret.
primary expression
  1. Literals, names, and names qualified by the :: (scope resolution) operator.
  2. Any of the following types of expressions: a) identifiers, b) parenthesized expressions, c) function calls, d) array element specifications, e) structure member specifications, or f) union member specifications.
private
Pertaining to a member of a class that is accessible only to member functions and friends of that class.
process
  1. An address space and single thread of control that executes within that address space, and its required system resources. A process is created by another process issuing the fork() function. The process that issues the fork() function is known as the parent process, and the new process created by the fork() function is known as the child process.
  2. An instance of a program running on a system and the resources that it uses.
process group
A collection of processes in a system that is identified by a process group ID.
process group ID (PGID)
The unique identifier representing a process group during its lifetime. A process group ID is a positive integer that is not reused by the system until the process group lifetime ends.
process group lifetime
A period of time that begins when a process group is created and ends when the last remaining process in the group leaves the group because either it is the end of the last process' lifetime or the last remaining process is calling the setsid() or setpgid() functions. X/Open. ISO.1.
process ID (PID)
The unique identifier that represents a process. A process ID is a positive integer and is not reused until the process lifetime ends.
process lifetime
The period of time that begins when a process is created and ends when the process ID is returned to the system. X/Open. ISO.1. After a process is created with a fork() function, it is considered active. Its thread of control and address space exist until it terminates. It then enters an inactive state where certain resources may be returned to the system, although some resources, such as the process ID, are still in use. When another process executes a wait() or waitpid() function for an inactive process, the remaining resources are returned to the system. The last resource to be returned to the system is the process ID. At this time, the lifetime of the process ends.
profile-directed feedback
A two-stage compilation process that first compiles and runs a program to analyze its behavior and then recompiles the program to optimize its execution. The results of the analysis stage are saved in a profile data file that is input to the second, optimization stage.
profiling
A performance analysis process that is based on statistics for the resources that are used by a program or application.
program object
All or part of a computer program in a form suitable for loading into virtual storage for execution. Program objects are stored in partitioned data set extended (PDSE) program libraries and have fewer restrictions than load modules. Program objects are produced by the binder.
program unit
See compilation unit.
protected
Pertaining to a class member that is accessible to the class itself, subclasses, and all classes in the same package.
prototype
A function declaration or definition that includes both the return type of the function and the types of its parameters.
public
In object-oriented programming, pertaining to a class member that is accessible to all classes.
pure virtual function
A virtual function that has the function definition replaced with '=0;'.

Q

QMF
See Query Management Facility.
qualified class name
Any class name or class name qualified with one or more :: (scope) operators.
qualified name
  1. A data set name consisting of a string of names separated by periods; for example, TREE.FRUIT.APPLE is a qualified name.
  2. In C++, a name that is used to qualify a nonclass type name, such as a member, by its class name.
qualified type name
A name used to reduce complex class name syntax by using typedefs to represent qualified class names.
Query Management Facility (QMF)
An IBM query and report writing facility that supports a variety of tasks such as data entry, query building, administration, and report analysis.
queue
A data structure for processing work in which the first element added to the queue is the first element processed. This order is referred to as first-in first-out (FIFO).
quotation mark
The characters " and '.

R

radix character
The character that separates the integer part of a number from the fractional part. X/Open .
random access
An access mode in which records can be referred to, read from, written to, or removed from a file in any order.
real group ID
The attribute of a process that, at the time of process creation, identifies the group of the user who created the process. This value is subject to change during the process lifetime.
real user ID
The attribute of a process that, at the time a process is created, identifies the user who created the process.
reason code
A value used to indicate the specific reason for an event or condition.
reassociation
An optimization technique that rearranges the sequence of calculations in a subscript expression producing more candidates for common expression elimination.
redirection
In a shell, a method of associating files with the input or output of commands.
reentrant
The attribute of a program or routine that allows the same copy of the program or routine to be used concurrently by two or more tasks.
reference class
A class that links a concrete class to an abstract class. Reference classes make polymorphism possible with the collection classes.
refresh
To ensure that the information on the user's terminal screen is up-to-date.
register variable
A variable defined with the register storage class specifier. Register variables have automatic storage.
regular expression
  1. A set of characters, meta characters, and operators that define a string or group of strings in a search pattern.
  2. A string containing wildcard characters and operations that define a set of one or more possible strings.
  3. A mechanism for selecting specific strings from a set of character strings.
regular file
A file that is a randomly accessible sequence of bytes, with no further structure imposed by the system. [POSIX.1]
relation
An unordered flat collection class that uses keys, allows for duplicate elements, and has element equality.
relative path name
A string of characters that is used to refer to an object and that starts at some point in the directory hierarchy other than the root. The starting point is frequently a user's current directory.
reserved word
A word that is defined by a programming language and that cannot be used as an identifier or changed by the user.
residency mode (RMODE)
In z/OS, a program attribute that refers to where a module is prepared to run. RMODE can be 24 or ANY. ANY refers to the fact that the module can be loaded either above or below the 16M line. RMODE 24 means the module expects to be loaded below the 16M line.
reverse solidus
RMODE
See residency mode.
runtime environment
A set of resources that are used to run a program or process.
runtime library
A compiled collection of functions whose members can be referred to by an application program at run time.

S

SBCS
See single-byte character set.
scalar
An arithmetic object, an enumerated object, or a pointer to an object.
scope
A part of a source program in which an object is defined and recognized.
scope operator
In C++, an operator that defines the scope for the argument on the right: if the left argument is blank, the scope is global; if the left argument is a class name or namespace name, then the scope is within that class or namespace respectively.
SDK
See software development kit.
semaphore
An object used by multi-threaded applications for signaling purposes and for controlling access to serially reusable resources. Processes can be locked to a resource with semaphores if the processes follow certain programming conventions.
sequence
A sequentially ordered flat collection.
sequential access
The process of referring to records one after another in the order in which they appear on the file. See also access mode.
sequential concatenation
The allocation of sequential data sets, partitioned data set (PDS) members, partitioned data set extended (PDSE) members, UNIX files, or any combination of these such that the system retrieves them as a single, sequential, data set.
sequential data set
A data set whose records are organized based on their successive physical positions, such as on magnetic tape. See also partitioned data set.
session
A collection of process groups established for job control purposes.
shell
A software interface between users and an operating system. Shells generally fall into one of two categories: a command line shell, which provides a command line interface to the operating system; and a graphical shell, which provides a graphical user interface (GUI).
signal
  1. A mechanism by which a process can be notified of, or affected by, an event occurring in the system. Examples of such events include hardware exceptions and specific actions by processes.
  2. In operating system operations, a method of inter-process communication that simulates software interrupts.
  3. A condition that might or might not be reported during program execution. For example, a signal can represent erroneous arithmetic operations, such as division by zero.
signal handler
A subroutine or function that is called when a signal occurs.
single-byte character set (SBCS)
A coded character set in which each character is represented by a 1-byte code. A 1-byte code point allows representation of up to 256 characters. See also double-byte character set.
single precision
The use of one computer word to represent a number, in accordance with the required precision.
slash
The character /, also known as forward slash. This character is named <slash> in the portable character set.
socket
In the Network Computing System (NCS), a port on a specific host; a communications end point that is accessible through a protocol family's addressing mechanism. A socket is identified by a socket address.
software development kit (SDK)
A set of tools, APIs, and documentation to assist with the development of software in a specific computer language or for a particular operating environment.
sorted map
A sorted flat collection with key and element equality.
sorted relation
A sorted flat collection that uses keys, has element equality, and allows duplicate elements.
sorted set
A sorted flat collection with element equality.
source module
See source program.
source program
A set of instructions that are written in a programming language and must be translated into machine language before the program can be run.
space character
In the portable character set, the <space> character.
spanned record
A logical record stored in more than one block on a storage medium.
specialization
A user-supplied definition which replaces a corresponding template instantiation.
spill area
A storage area that is used to save the contents of registers.
SQL
See Structured Query Language.
square bracket
See bracket.
stack frame
See dynamic storage area.
standard error (STDERR)
The output stream to which error messages or diagnostic messages are sent. See also standard input, standard output.
standard input (STDIN)
An input stream from which data is retrieved. Standard input is normally associated with the keyboard, but if redirection or piping is used, the standard input can be a file or the output from a command. See also standard error.
standard output (STDOUT)
The output stream to which data is directed. Standard output is normally associated with the console, but if redirection or piping is used, the standard output can be a file or the input to a command. See also standard error.
stanza
A grouping of options in a configuration file to control various aspects of compilation by default.
statement
In programming languages, a language construct that represents a step in a sequence of actions or a set of declarations.
static binding
The act of resolving references to external variables and functions before run time.
STDERR
See standard error.
STDIN
See standard input.
STDOUT
See standard output.
storage class specifier
A storage class keyword that determines storage duration, scope, and linkage.
stream
A file access object that allows access to an ordered sequence of characters, as described by the ISO C standard. Such objects can be created by the fdopen() or fopen() functions, and are associated with a file descriptor. A stream provides the additional services of user-selectable buffering and formatted input and output.
string
A contiguous sequence of bytes terminated by and including the first null byte.
string constant
Zero or more characters enclosed in double quotation marks. See also string literal.
string literal
Zero or more characters enclosed in double quotation marks. See also string constant.
striped data set
An extended-format data set that occupies multiple volumes. A striped data set is a software implementation of sequential data striping.
struct
See structure.
struct tag
See structure tag.
structure
A class data type that contains an ordered group of data objects. Unlike an array, the data objects within a structure can have varied data types.
Structured Query Language (SQL)
A standardized language for defining and manipulating data in a relational database.
structure tag
The identifier that names a structure data type.
stub routine
Within a runtime library, a routine that contains the minimum lines of code needed to locate a given routine.
subprogram
In the IPA Link version of the Inline Report listing section, an equivalent term for 'function'.
subscript
One or more expressions, each enclosed in brackets, that follow an array name. A subscript refers to an element in an array.
subtree
A tree structure created by arbitrarily denoting a node to be the root node in a tree. A subtree is always part of a whole tree.
superset
Given two sets A and B, A is a superset of B if and only if all elements of B are also elements of A. That is, A is a superset of B if B is a subset of A.
support
In system development, to provide the necessary resources for the correct operation of a functional unit.
switch expression
The controlling expression of a switch statement.
switch statement
A C or C++ language statement that causes control to be transferred to one of several statements depending on the value of an expression.
system default
A default value defined in the system profile.
system process
An implementation-dependent object, other than a process executing an application, that has a process ID. X/Open.

T

tab character
A character that indicates that printing or displaying should start at the next horizontal position on the current line. The tab is designated by '\t' in the C language and is named in the portable character set.
task library
A class library that provides the facilities to write programs that consist of tasks.
template
A family of C++ classes or functions with variable types.
template class
A C++ class instance generated by a class template.
template function
A C++ function generated by a function template.
template instantiation
The act of creating a new definition of a function, class, or member of a class from a template declaration and one or more template arguments.
text file
A file that contains only printable characters.
thread
A stream of computer instructions that is in control of a process. In some operating systems, a thread is the smallest unit of operation in a process. Several threads can run concurrently, performing different jobs.
throw
In programming languages, to pass an error or exception to a handling routine.
tilde
One of the accent marks in Latin script (~).
token
The basic syntactic unit of a computing language. A token consists of one or more characters, excluding the blank character and excluding characters within a string constant or delimited identifier.
toolchain
A collection of programs or tools used to develop a product.
traceback
A section of a dump that provides information about the stack frame, the program unit address, the entry point of the routine, the statement number, and status of the routines on the call-chain at the time the traceback was produced.
trigraph
A sequence of three graphic characters that represent another graphic character. For example, in the C programming language, the trigraph ??= is used to denote the # character.
truncate
To shorten a field, value, statement, or string.
try block
A C++ block in which a known exception is passed to an exception handler. See also catch block.
type definition
A definition of a name for a data type.
type specifier
In programming languages, a keyword used to indicate the data type of an object or function being declared.

U

ultimate consumer
The target for data in an input and output operation. An ultimate consumer can be a file, a device, or an array of bytes in memory.
ultimate producer
The source for data in an input and output operation. An ultimate producer can be a file, a device, or an array of bytes in memory.
unary expression
An expression that contains one operand.
undefined behavior
Referring to a program or function that might produce erroneous results without warning because of its use of an indeterminate value, or because of erroneous program constructs or erroneous data. See also implementation-defined.
union tag
An identifier that names a union data type.
UNIX System Services
An element of z/OS that creates a UNIX environment that conforms to XPG4 UNIX 1995 specifications and that provides two open-system interfaces on the z/OS operating system: an application programming interface (API) and an interactive shell interface.
UTC
See Coordinated Universal Time.

V

volatile attribute
An attribute of a data object that indicates the object is changeable. Any expression referring to a volatile object is evaluated immediately (for example, assignments).

W

while statement
A looping statement that executes one or more instructions repeatedly during the time that a condition is true.
white space
A sequence of one or more characters, such as the blank character, the newline character, or the tab character, that belong to the space character class.
wide character
A character whose range of values can represent distinct codes for all members of the largest extended character set specified among the supporting locales.
wide-character code
An integral value that corresponds to a single graphic symbol or control code.
wide-character string
A contiguous sequence of wide characters terminated by and including the first instance of a null wide character.
wide-oriented stream
A wide-oriented stream refers to a stream which only wide character input/output is allowed.
word
A fundamental unit of storage that refers to the amount of data that can be processed at a time. Word size is a characteristic of the computer architecture. See also doubleword, halfword.
working directory
The active directory. When a file name is specified without a directory, the current directory is searched.
writable static area (WSA)
An area of memory in a program that is modifiable during the running of a program. Typically, this area contains global variables and function and variable descriptors for dynamic link libraries (DLLs).
write
  1. To output characters to a file, such as standard output or standard error. Unless otherwise stated, standard output is the default output destination for all uses of the term write. [POSIX.2]
  2. To make a permanent or transient record of data in a storage device or on a data medium.
WSA
See writable static area.

X