Linguagens E Compiladores
Ementa: Revisão dos Conceitos de Teoria de Linguagens Formais (Linguagens Regulares, Linguagens Livres do Contexto) e seus Reconhecedores (Autômatos Finitos Determinísticos, Não-Determinísticos e de Pilha). Conceitos sobre Análise Léxica e Construção de Tradutores/Interpretadores. Uso de Ferramentas Automatizadas para Geração de Analisadores Léxicos. Conceitos sobre Análise Sintática. Geração de Analisadores Sintáticos Ascendentes e Descendentes. Uso de Ferramentas Automatizadas para Geração de Analisadores Sintáticos. Conceitos sobre Análise Semântica e Geração de Código.
Syllabus: Concept Review of Formal Language Theory (Regular Languages, Free Context Languages) and Language Recognizer (Finite deterministic, Non-deterministic, and Stack Automata). Concepts about Lexical Analyze and Construction of Translators/Interpreters. Use of Automatized Tools for Lexical Analyzer Generation. Concepts of Syntactic Analyzer. Generation of Ascendant and Descendant Syntactic Analyzer. Use of Automatized Tool for Syntactic Analyzer Generation. Concepts of Semantic Analyses and Code Generation.
Bibliografia: 1) Menezes, P. B. Linguagens Formais e Autômatos. Série Livros Didáticos, Número 3, 4ª Edição 2002 (1ª Edição 1997). Instituto de Informática da UFRGS. Editora Sagra Luzzato, 2002. 2) Aho, A. V.; Lam, M. S.; Sethi, R.; Ullman, J. D. Compiladores: Princípios, técnicas e ferramentas (Compilers: Principles, Techniques, and Tools). Addison Wesley, 2008. 3) Louden, K. C. Compiladores: Princípios e Práticas (Compilers: Principles and Practices). São Paulo, SP: Thomson, 2004.
