A syntax-directed definition (SDD) is a
context-free grammar together with attributes and rules. Attributes are
associated with grammar symbols and rules are associated with productions.
An attribute has a name and an associated
value: a string, a number, a type, a memory location, an assigned register,
strings. The strings may even be long sequences of code, say code in the
intermediate language used by a compiler. If X is a symbol and a is one of its
attributes, then we write X.a to denote the value of a at a particular
parse-tree node labeled X. If we implement the nodes of the parse tree by
records or objects, then the attributes of X can be implemented by data
fields in the records that represent the nodes for X. The attributes are
evaluated by the semantic rules attached to the productions.
0 comments