BCC328 - Construção de Compiladores I - 2025-2Carga horária da disciplina: 4 horas/aula Professor(es) em 2025-2
 ObjetivosAo final do curso é esperado que o aluno:- possua uma visão geral sobre o processo de compilação sob o ponto de vista de implementação - saiba especificar aspectos léxicos, sintáticos e semânticos de linguagens através de expressões regulares e gramáticas livres de contexto - conheça as principais técnicas e ferramentas de apoio usadas na construção de compiladores, sabendo usá-las na especificação e implementação de linguagens de programação EmentaImplementação de linguagens de programação: compilação e interpretação; análise léxica; análise sintática; análise semântica.Conteúdo Programático- Implementação de linguagens de programação: compilação e interpretação- Análise léxica: análise léxica, analisador léxico ad hoc, expressões regulares, autômatos finitos e geradores de analisadores léxicos - Análise sintática: análise sintática, gramáticas livre de contexto, análise sintática descendente, análise sintática ascendente, geradores de analisadores sintáticos e ações semânticas - Análise semântica: árvore abstrata, tabelas de símbolos, checagem de tipos e regras semânticas Bibliografia- A.W. APPEL. Modern Compiler Implementation in ML. Cambridge University Press, 1998.- A.W. APPEL. Modern Compiler Implementation in Java. Cambridge University Press, 1998. - A.V. AHO, M.S. LAM, R. SETHI, J.D. ULMAN. Compiladores: Princípios, Técnicas e Ferramentas. 2. edição. Pearson, 2007. Bibliografia complementar- Mogensen, Torben Ægidius. Introduction to Compiler Design. 2. edição. Springer, 2011.- Grüne, Dick; Reeuwijk, Kees van; Bal, Henri E.; Jacobs, Ceriel J. H.; Langendoen, Koen. Modern Compiler Design. 2. edição. Springer, 2012. - Wilhelm, Reinhard; Seidl, Helmut; Hack, Sebastian. Compiler Design: Syntactic and Semantic Analysis. Springer, 2013. - Fischer, Charles N.; Cytron, Ron K.; LeBlanc, Richard J. Jr. Crafting a Compiler. Pearson, 2010. - Cooper, Keith D; Torczon, Linda. Engineering a Compiler. 2. edição. Elsevier, 2011. ISBN-13:  | 
    
Departamento de Computação  |  ICEB  |  Universidade Federal de Ouro Preto
        Campus Universitário Morro do Cruzeiro  |  CEP 35400-000  |  Ouro Preto - MG, Brasil
        Telefone: +55 31 3559-1692  |  decom@ufop.edu.br