Next: , Previous: , Up: Expression Evaluator   [Index]

3.3 Variables

Variables may be of either an intrinsic type (though not void), either an application defined opaque type.

See Intrinsic Types.

See Application Defined Types.

Variable names are valid C identifiers, i.e. the first character in a variable name is a letter or an underscore (_), while the subsequent characters may be letters, digits or underscores (_s).

Variable definitions are introduced through the struct x1f4_variable_type record.

See struct x1f4_variable_type.

Modifying variables during expression evaluation is possible via attribution operators.

Symbolic constants are supported by marking variables as read only. The expression evaluator disallows overwritting such variables when parsing expressions, thus the expressions modifying a read only variable is invalid.

See Variable Flags.

See Side Effects Operators.

Variables and functions do not share the same name space, hence it is possible to have a variable having a function name.

Two variables cannot have the same name.

Note that the actual value of a variable does not belong to its definition and the address at which it is stored is referred to the expression evaluator as a distinct record.

Variables may also act as dynamic references, rebinding data according to the application logic.