General Information
Tutorials
Reference Manuals
Libraries
Translation Tasks
Tools
Administration
|
Tutorial on Name AnalysisKernel Grammar
The kernel grammar of the example language specifies the structure
for Core.con[1]== Program: Source. Source: Block. Block: Compound. Compound: 'begin' Declaration* Statement* 'end'. Statement: Expression ';'. Expression: Operand. Operand: IntNumber. This macro is attached to a product file.
Core.sym[2]== Expression ::= Operand. This macro is attached to a product file. The notation of identifiers and numbers is chosen as in Pascal. Core.gla[3]== Ident: PASCAL_IDENTIFIER IntNumber: PASCAL_INTEGER PASCAL_COMMENT This macro is attached to a product file.
In the course of refining the name analysis task we will introduce
several different contexts for identifier occurrences.
Each occurrence has to have the attribute Core.lido[4]== TERM Ident: int; ATTR Sym: int; CLASS SYMBOL IdentOcc COMPUTE SYNT.Sym = TERM; END; This macro is attached to a product file.
|