1.4 Identifiers

Identifiers denote programmer defined names for specific constants, types, variables, procedures and functions, units, and programs. All programmer defined names in the source code – excluding reserved words – are designated as identifiers.

Identifiers consist of between 1 and 127 significant characters (letters, digits and the underscore character), of which the first must be a letter (a–z or A–Z), or an underscore (_). The following diagram gives the basic syntax for identifiers.

_________________________________________________________________________________________________________
Identifiers

--identifier--|letter---|--------------------------------------------
           --x --- --|letter----
                     |digit--|
                     --x ---

--dotted- identifier--|identifier----------------------------------------
                ----.-----

--fully-qualified-identifier -dotted- identifier-------------------------------
___________________________________________________________________

Dotted identifiers are an identifier which can contain a dot in the name. Fully qualified identifiers are dotted identifiers with the implied meaning that the first part is a unit name, and the second part is the name of an identifier in that unit. Both the unit identifier and the latter can of course also be dotted identifiers in themselves.

Like Pascal reserved words, identifiers are case insensitive, that is, both

  myprocedure;

and

 MyProcedure;

refer to the same procedure.

Remark As of version 2.5.1 it is possible to specify a reserved word as an identifier by prepending it with an ampersand (&). This means that the following is possible:

program testdo;  
 
procedure &do;  
 
begin  
end;  
 
begin  
  &do;  
end.

The reserved word do is used as an identifier for the declaration as well as the invocation of the procedure do.