Formulário de Plano de Ensino
Obs. Browser em português: Utilize a opção Arquivo -> Salvar Como ... ; Browser em inglês: Utilize a opção File -> Save As ...
Seção 1. Caracterização complementar da turma/disciplina

Turma/Disciplina: 025127 - RA - LABORATORIO DE COMPILADORES
2004/1

Professor Responsavel: JOSE DE OLIVEIRA GUIMARAES

Objetivos Gerais da Disciplina
Capacitar o aluno a implementar o projeto de um compilador completo para uma linguagem de programação de alto nível.

Ementa da Disciplina
1- Descrição da Linguagem de Programação;
2- Projeto e Implementação dos módulos: Analisador Léxico, Analisador Sintático, Analisador Semântico, Geração de Código, Otimizador de Código, Interpretador de Código.



Número de Créditos
Teóricos
Práticos
Estágio
Total
0
2
0
2

Requisitos da Disciplina
(025119 OU 021113)
Co-Requisitos da Disciplina

Caráter de Oferecimento

Seção 2. Desenvolvimento da Turma/Disciplina

Marcar se a turma/disciplina estiver cadastrada no PESCD (Programa de Estágio Supervisionado de Capacitação de Docente)

Marcar se nesta turma, neste Ano/Semestre, estiver acontecendo um estágio do PESCD (Programa de Estágio Supervisionado de Capacitação de Docente)

Requisito recomendado (aos alunos da graduação)
Estruturas de Dados

Tópicos/Duração
1 - (2 horas) Descrição da Linguagem de Programação;

2 - (10 horas ) Projeto e Implementação da ASA e do Gerador de Código.

3 - (10 horas ) Projeto e Implementação do Analisador Semântico e implementação de algumas ferramentas de software acopladas ao compilador.

4 - (8 horas ) Implementação de ferramentas de software acopladas ao compilador.

Objetivos Específicos

Estratégias de Ensino
1 - Apresentação detalhada da especificação de uma linguagem de programação de alto nível;

2 - Exposição dos tópicos em aula;

3 - Orientação para o projeto e implementação dos diversos módulos do compilador.

Atividades dos Alunos
1 - Discutir os aspectos apresentados de um compilador;

2 - Projetar e implementar os módulos do compilador sob orientação do professor.

Recursos a serem utilizados
Materiais:

- Laboratório de Ensino de Software - DC;

Procedimentos de Avaliação do aprendizado dos alunos
provas, trabalhos individuais ou em grupo, participação, trabalhos extra-classe, seminários, relatórios, exercícios, etc..)
A média final será calculada como MF = (NT + NE)/2 se NT e NE forem maiores do que 6. Caso contrário, a MF será a menor entre as notas NT ou NE. NT é a nota dada ao trabalho escrito. NE é a nota da entrevista. Haverá uma entrevista escrita no final do semestre sobre o trabalho. A entrevista é individual. O trabalho poderá ser feito em grupos de até duas pessoas.

Bibliografia
Publicação (Procure usar normas ABNT. a menos da formatação)
AHO, A.V.; SETHI, R. & ULLMAN, J.D. - Compilers-Principles, Techniques and Tools. Addison-Wesley, 1986.

HOLUB, Alan. - Compiler Design in C. - Prentice-Hall, 1990.

BENETT, J.P. - Introduction to Compiling Techniques - A First Course Using Ansi C, Lex and Yacc. McGraw-Hill Book Co,1990.

GUIMARÃES, José de O. Construção de Compiladores. Apostila do curso de mesmo nome. 1998.

GUIMARÃES, José de O. Learning Compiler Construction by Examples. Disponível em http://www.dc.ufscar.br/~jose/courses

LEVINE, John R; MASON, Tony & BROWN, Dorig - Lex & Yacc. O Reilly and Associates, 1992, 2a. ed.

PITTMAN, Thomas & PETERS, James - The Art of Compiler Design. Prentice-Hall International, 1992.


Observações
( por exemplo: outras turmas em oferecimento simultâneo, distribuição de programas entre professores, disponibilidade de bibliografia, vagas de extensão, alunos especiais, etc.)

Seção 3. Apreciação do Plano de Ensino

Pareceres já incorporados.   parecer inicial   indicações para adequação   parecer definitivo