Análise e Síntese. Análise léxica, sintática e semântica. Geração de código intermediário. Otimização de código intermediário. Geração e otimização de código objeto.
-
Introdução à Compilação de Programas:
a) Conceitos básicos e funcionalidades; b) Componentes de um compilador; c) Fases de Análise e Síntese.
-
Análise Léxica:
a) Conceitos básicos (tokens, lexemas, etc.); b) Especificação e reconhecimento de linguagens regulares; c) Implementação e geração de analisadores léxicos.
-
Análise Sintática:
a) Conceitos básicos (derivação, árvores sintáticas, ambiguidade, etc.); b) Especificação e reconhecimento de linguagens livres de contexto; c) Análise LL e LR; d) Implementação e geração de analisadores sintáticos; e) Árvores sintáticas abstratas.
-
Análise semântica: a) Conceitos básicos; b) Sistemas de tipos; c) Tabela de símbolos e resolução de nomes; d) Implementação de verificação de tipos.
-
Representação intermediária
-
Ambientes de execução, organização de memória
-
Geração de código
-
Otimização de código
- Tutoriais: Git & GitHub Basics; Git-it: https://github.com/jlord/git-it-electron/releases
- THAIN, Douglas. Introduction to Compilers and Language Design. 2a Ed, 2020, http://compilerbook.org.
- AHO, A. et al. Compiladores: princípios, técnicas e ferramentas. 2a Ed., Addison-Wesley, 2008.
- LEVINE, John. Lex & Bison. O'Reilley. 2009.
- APPEL, A. W. Modern Compiler Implementation in Java. Cambridge University Press, Cambridge, 1997.
- LOUDEN, K. C. Compiladores: Princípios e Práticas. Editora Thompson Pioneira, 1a Ed., 2004.
- RICARTE, I. Introdução à Compilação, Editora Campus, 2008.
- BROWN, D.; LEVINE, J. ; MASSON, T. Lex & Yacc. Unix Programming Tool. O'Reilly, 2nd edition, 1995.
- MITCHELL, J. Foundation for Programming Languages. Foundations of Computing, MIT Press, 1996.
- WINSKEL, G. The Formal Semantics of Programming Languages: An Introduction. Foundations of Computing series. MIT Press, Cambridge, Massachusetts, February 1993.
- SCOTT, M.L. Programming Language Pragmatics, 3rd ed.
- ABELSON, H.; SUSSMAN, G.; with SUSSMAN, J. A book for your shelf: Structure and Interpretation of Computer Programs, 2nd ed.
See LICENSE for more information. This is an organization for academic activities. See Authors.