Processamento de Linguagens I
Ano Lectivo: 06/07 (2º semestre)
Sumário das Aulas Teóricas (LESI)
Docente: Pedro Rangel Henriques (406012)
Aula T 1
Tópicos:
- Apresentação da Disciplina:
- Objectivos e Funcionamento;
- Avaliação e Trabalhos Práticos;
- Programa e Bibliografia;
- O Processamento de Linguagens na UM (lp@di.um.pt) e o Site www.di.uminho.pt/~gepl/LP;
o Mapa de Conceitos sobre LP.
Aula T 2
Tópicos:
- Introdução ao tema Processamento de Linguagens: conceitos básicos.
Aula T 3
Tópicos:
- Introdução ao tema Processamento de Linguagens (cont.):
- Gramáticas Independentes de Contexto
- Linguagem, Frase e Significado
- Reconhecimento e Transformação
- Módulos comuns a qualquer Processador de Linguagens
Aula T 4
Tópicos:
- Análise Léxica:
- Caracterização da Tarefa
- Estratégias de Implementação: Tabela de Símbolos; e Autómatos Deterministas Reactivos
- O Gerador flex
- Análise Sintáctica:
Aula T 5
Tópicos:
- Introdução ao tema Processamento de Linguagens (cont.):
- Processadores de Linguagens para Domínios Específicos -- descrição dos casos
envolvidos na folha de enunciados do 1º Trabalho Prático.
Aula T 6
Tópicos:
- Análise Sintáctica:
- Caracterização intuitiva (via exemplos) da tarefa predictiva típica de um Parser Top-Down (TD)
Aula T 7
Tópicos:
- Análise Sintáctica:
- O Parser Top-Down (TD) mais simples: Recursivo-Descendente Puro (pureRD) -- definição
genérica e exemplos
Aula T 8
Tópicos:
- Análise Sintáctica:
- O Parser Top-Down (TD) mais simples: Recursivo-Descendente Puro (pureRD) -- exemplos
para sedimentação do conceito (a linguagem das SExpressions)
- A Condição LL(1) e Definição intuitiva de LookAhead, First e Follow
Aula T 9
Não houve aula: organização e participação na ETAPS'2007
Aula T 10
Não houve aula: organização e participação na ETAPS'2007
Aula T 11
Não houve aula: FÉRIAS DE PÁSCOA
Aula T 12
Tópicos:
- Análise Sintáctica:
- Evolução do Parser Top-Down (TD) mais simples, Recursivo-Descendente Puro (pureRD),
para o parser Recursivo-Descendente Genérico (gRD) e deste
para o parser Recursivo-Descendente Genérico Guiado por Tabela (tdgRD).
Aula T 13
Tópicos:
- Análise Sintáctica:
- Evolução do Parser Top-Down (TD) Recursivo-Descendente Genérico (gRD)
para o parser Recursivo-Descendente Genérico Guiado por Tabela (tdgRD) -- continuação.
- Construção intuitiva e sistemática da Tabela de Decisão LL(1) (TabLL1) com base
no LookAhead(1) de cada produção.
Aula T 14
Tópicos:
- Análise Sintáctica:
- Evolução do Parser Top-Down (TD) Recursivo-Descendente Genérico Guiado por Tabela (tdgRD)
para o Parser Iterativo LL(1) também guiado pela Tabela de Decisão LL(1) (TabLL1);
referência explícita à Stack de Parsing.
- As Configurações Inicial e Final na abordagem TD versus a abordagem BU.
- Breve referência às gramáticas clausais, designadas por DGCs embutidas no Prolog e
à sua transformação sistemática (no momento da leitura do ficheiro) num parser pureRD escrito em Prolog.
Aula T 15
Tópicos:
- Análise Sintáctica:
- Introdução intuitiva à técnica de Parsing Bottom-Up (BU)
e ao respectivo Push-Down Automaton.
Aula T 16
Não houve aula: FERIADO NACIONAL
Aula T 17
Não houve aula: FERIADO NACIONAL.
Aula T 18
Tópicos:
- Análise Sintáctica:
- Introdução à técnica de Parsing Bottom-Up (BU) LR e ao respectivo Autómato LR.
- Noção de Item LR: LR(0), LR(1), SLR(1), LALR(1).
- As acções de Transição (Shift) e Redução (Reduce) e os possíveis Conflitos.
Aula T 19
Tópicos:
- Análise Sintáctica:
- Parsing Bottom-Up (BU) LR.
- O Algoritmo de Parsing LR(k) e a respectiva Stack de estados.
Aula T 20
Tópicos:
- Análise Sintáctica:
- Parsing Bottom-Up (BU) LR.
- Construção sistemática do Autómato LR(0) e das Tabelas, ACTION e GOTO, de Decisão LR(0) e SLR(1).
- Identificação e Resolução de Conflitos shift-reduce ou reduce-reduce.
Aula T 21
Tópicos:
- Processamento de Linguagens -- definição formal da sintaxe e da semântica:
- Gramáticas de Atributos: introdução intuitiva e definição rigorosa dos seus elementos; regras de especificação
com GAs.
Aula T 22
Tópicos:
- Processamento de Linguagens -- definição formal da sintaxe e da semântica:
- Gramáticas de Atributos: introdução ao conceito de atributo herdado e sintetizado; desenvolvimento
de um exemplo (a lista de palavras e números e o somatório contextual).
Aula T 23
Tópicos:
- Processamento de Linguagens -- definição formal da sintaxe e da semântica:
- Gramáticas de Atributos: o conceito de atributo herdado e sintetizado (cont.);
continuação do desenvolvimento de um exemplo (a lista de palavras e números e o somatório contextual);
discussão das formas alternativas de passar os atributos herdados e do nível em que fazer a síntese.
Aula T 24
Tópicos:
- Compilação:
- Apresentação (revisão) de todas as características que fazem de um Compilador um caso específico de
Processador de Linguagens, com vários tópicos particularmente interessantes no campo do ensino e investigação;
- A estratégia de Gerar Código para Máquinas Virtuais; a importância que assumem na simplificação do
esquema de tradução e, sobretudo, na independência da plataforma-alvo;
- Apresentação do esquema genérico de processamento de uma Linguagem de Programação (com os seus blocos
de Declarações e de Instruções) através de uma Gramática de Atributos -- a síntese/herança da Tabela de Identificadores
e a síntese do Código.
Aula T 25
Tópicos:
- Compilação:
- Continuação da discussão sobre o esquema genérico de processamento de uma Linguagem de Programação (com os seus blocos
de Declarações e de Instruções) através de uma Gramática de Atributos -- a Tabela de Identificadores
e outras estruturas de dados de suporte;
- A estratégia geral para Geração de Código.
Aula T 26
Tópicos:
- Compilação -- a Geração de Código para Máquinas Virtuais:
- Descrição e análise detalhada da Arquitectura da Máquina de Stack Virtual VM (adoptada na disciplina
como máquina-alvo para o Compilador de LISS) e seu princípio de funcionamento;
- Estudo do conjunto de Instruções da Máquina de Stack Virtual VM;
- Esquema de Tradução do Compilador de LISS para Assembly da Máquina de Stack Virtual VM.
author: prh@di.uminho.pt;
Last modified: sábado, Junho 9, 2007 at 15:35