- Evaluates attributes during parse/syntax tree traversal
- Makes attribute grammar less expressive
- But often sufficient in practice
For computing synthesized attributes: postorder traversal of the parse/syntax tree
S-attributed grammarL-attributed grammarDepends on the attribute types (inherited vs. synthesized)
For synthesized attributes: postorder traversal of the tree
For inherited attributes: preorder traversal with children ordering