Difference between revisions of "Attribute Grammars"

From Wiki**3

(Exercises)
Line 21: Line 21:
 
* [[Attribute Grammars/Exercise 8: Arithmetic|Exercise 8: Arithmetic]] (Teste 2, 2010/2011)
 
* [[Attribute Grammars/Exercise 8: Arithmetic|Exercise 8: Arithmetic]] (Teste 2, 2010/2011)
 
* [[Attribute Grammars/Exercise 9: Text relevance|Exercise 9: Text relevance]] (Teste 2, 2011/2012)
 
* [[Attribute Grammars/Exercise 9: Text relevance|Exercise 9: Text relevance]] (Teste 2, 2011/2012)
 +
* [[Attribute Grammars/Exercise 10: Expressions and bases|Exercise 10: Expressions and bases]]
  
 
[[category:Compilers]]
 
[[category:Compilers]]
 
[[category:Teaching]]
 
[[category:Teaching]]

Revision as of 15:34, 3 April 2014

Compiladores
Introdução ao Desenvolvimento de Compiladores
Aspectos Teóricos de Análise Lexical
A Ferramenta Flex
Introdução à Sintaxe
Análise Sintáctica Descendente
Gramáticas Atributivas
A Ferramenta YACC
Análise Sintáctica Ascendente
Análise Semântica
Geração de Código
Tópicos de Optimização

Topics: attributes in grammar symbols; syntax-directed evaluation.

Synthesized attributes: passed from child nodes to parent nodes.

Inherited attributes: may be passed from parent- to child nodes or between siblings.

S-attributed grammars: only synthesized attributes.

L-attributed grammars: inherited attributes are only dependent on the parents' attributes or on the older siblings' (i.e., when evaluating left-to-right, only previously seen attributes are needed).

Exercises