Skip to content

damorim/compilers-cin

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

IF688 - Teoria e Implementação de Linguagens Computacionais

Engenharia da Computação, Centro de Informática, (UFPE)

Instrutores

Horário e Local de Aulas

  • Segunda-feira (10h-12h) e Quarta-feira (8h-10h), pela internet

Ementa

Este curso explora os princípios, algoritmos, e estruturas de dados envolvidos na teoria e implementação de compiladores. O conteúdo planejado inclui uma introdução aos princípios e técnicas de construção de compiladores, conceitos básicos da teoria de linguagens, análise léxica, análise sintática, análise semântica, representação de código intermediário, ambientes de execução, análise estática, otimização de código, geração de código.

Referências

Bibliografia

Objetivos

O objetivo da disciplina é compreender detalhes do processo de compilação e como aplicar os conceitos em outros contextos. A disciplina apresenta conceitos básicos sobre interpretação, análise, e síntese de programas.

Metodologia

Utilizaremos aulas gravadas pelo professor, aulas de projeto com a monitoria e um projeto de avaliação, com múltiplas entregas.

Recursos

Ferramentas

Avaliação

  • (Somatório das notas dos 4 Projetos) / 4
  • Final: Teste com todo o assunto da matéria
  • Observação:
    • Trabalhos “CTRL-C + CTRL-V” terão nota zero (vale tanto para cópia de colegas, como para trabalhos copiados da internet).

Provas anteriores

Notas

Plano de Ensino

Atenção! Este plano de ensino está sujeito a alterações durante o semestre, visite frequentemente a página para obter a versão mais atualizada, ou acompanhe os updates no repositório.

* Aulas em que o professor apresentará conteúdo da disciplina de forma síncrona. Haverá encontro pelo Google Meet (link através do classroom) em todas as datas marcadas.
** Apresentação dos projetos será passada pelo Classroom. Serão combinados com a turma horários durante a semana para tirar dúvidas sobre o projeto.

# Data Assunto Material
01 25/01/2021 (seg) Introdução - Vídeo 1
- Vídeo 2
02 27/01/2021 (qua) Introdução - Vídeo 3
- Vídeo 4
03 01/02/2021 (seg) Conceitos Básicos - Vídeo 5
- Vídeo 6
04 03/02/2021 (qua) Conceitos Básicos - Vídeo 7
- Vídeo 8
05 08/02/2021 (seg) Análise Léxica - Vídeo 9
06 10/02/2021 (qua) Análise Sintática - Vídeo 10
- Vídeo 11
07 15/02/2021 (seg) Carnaval ---
08 17/02/2021 (qua) Quarta-feira de Cinzas ---
09 22/02/2021 (seg) Análise Sintática - Vídeo 12
- Vídeo 13
10 24/02/2021 (qua) Análise Semântica - Vídeo 14
11 01/03/2021 (seg) Análise Semântica
Projeto 1 - Módulo Lexer e Parser**
- Vídeo 15
12 03/03/2021 (qua) Demo de Análise Semântica - Vídeo 16
13 08/03/2021 (seg) Representações Intermediárias - Vídeo 17
14 10/03/2021 (qua) Representações Intermediárias
Entrega do Projeto 1 - Módulo Lexer e Parser
- Vídeo 18
- Vídeo 19
15 15/03/2021 (seg) Representações Intermediárias
Projeto 2 - Módulo de Análise Semântica**
- Vídeo 20
16 17/03/2021 (qua) Aplicações de Compiladores ---
17 22/03/2021 (seg) Análise Estática e Otimização - Vídeo 21
- Vídeo 22
18 24/03/2021 (qua) Análise Estática e Otimização
Entrega do Projeto 2 - Módulo de Análise Semântica
- Vídeo 23
19 29/03/2021 (seg) Projeto 3 - Módulo de Otimização** ---
20 31/03/2021 (qua) Análise Estática e Otimização - Vídeo 24
21 05/04/2021 (seg) Gerenciamento de Memória e Geração de Código - Vídeo 25
22 07/04/2021 (qua) --- ---
23 10/04/2021 (sáb) Entrega do Projeto 3 - Módulo de Otimização ---
24 12/04/2021 (seg) Gerenciamento de Memória e Geração de Código
Projeto 4 - Módulo de Geração de Código**
- Vídeo 26
25 14/04/2021 (qua)
26 19/04/2021 (seg)
27 21/04/2021 (qua)
28 26/04/2021 (seg) Entrega do Projeto 4 - Módulo de Geração de Código ---
29 28/04/2021 (qua)
30 30/04/2021 (sex) Último dia de aulas no Siga ---
31 03/05/2021 (seg)
32 05/05/2021 (qua) Prova Final e Segunda Chamada ---
33 06/05/2021 (qui) Último dia para realizar provas finais no Siga ---
34 08/05/2021 (sáb) Último dia para lançamento de notas no Siga ---