Previous

4. Declarations, declarers and indicators

{Declarations serve

· to announce new indicators, e.g., identifiers,

· to define their modes or priorities, and

· to ascribe values to those indicators and to initialize variables.}

4.1. Declarations

4.1.1. Syntax

A) COMMON :: mode ; priority ; MODINE identity ; reference to MODINE variable ; MODINE operation ; PARAMETER ; MODE FIELDS. {MODINE :: MODE ; routine.}

a) NEST declaration of DECS{a,32b } : NEST COMMON declaration of DECS{42a ,43a,44a,e,45a,-}; where (DECS) is (DECS1 DECS2), NEST COMMON declaration of DECS1{42a ,43a,44a,e,45a,-}, and also{94f } token, NEST declaration of DECS2{a}.

b) NEST COMMON joined definition of PROPS PROP {b,42a ,43a,44a,e,45a,46e,541e} : NEST COMMON joined definition of PROPS{b,c}, and also{94f } token, NEST COMMON joined definition of PROP{c}.

c) NEST COMMON joined definition of PROP {b,42a ,43a,44a,e,45a,46e,541e} : NEST COMMON definition of PROP{42b ,43b,44c,f,45c,46f,541f,-}.

d) *definition of PROP : NEST COMMON definition of PROP {42b ,43b,44c,f,45c,46f,541f} ; NEST label definition of PROP{32c } . {Examples:

}

a)
MODE R = REF REAL, S = CHAR ·PRIO ¦ = 2, = 3 ·INT m =4096 ·REAL x, y ·OP ¦ = (BOOL a, b)BOOL : (a | TRUE | b)
b)
R = REF REAL, S = CHAR ·¦ = 2, = 3 ·m = 4096 ·x, y ·¦ = (BOOL a,b)BOOL : (a | TRUE | b)
c)
R = REF REAL ·¦ = 2 ·m = 4096 ·x ·¦ = (BOOL a, b)BOOL : (a | TRUE | b)

4.1.2. Semantics

The elaboration of a declaration consists of the collateral elaboration of its COMMON-declaration and of its declaration, if any. {Thus, all the COMMON-declarations separated by and-also-tokens are elaborated collaterally.}
 
Next