Compiladores (CC3001) — 2022/2023

Objetivos
Estudo dos conceitos e técnicas usados para a construção de compiladores e interpretadores de linguagens de programação convencionais.
Funcionamento
- As aulas teóricas são presenciais e iniciam na semana de 19 de Setembro
- As aulas laboratoriais são presenciais e iniciam na mesma semana
- Não há registo de presenças às aulas para efeitos de frequência (mas recomendo que as frequentem se puderem para acompanhar os conteúdos e resolver exercícios que contam para classificação)
- Pode e deve levar computador portátil para a aula laboratorial
Avaliação
- Exercícios das aulas: 10%
- Trabalho prático: 15% + 15% (2 fases)
- Exame final: 60%
- Classificação mínima no exame: 40% (8 valores em 20)
Moodle
Os materais e recursos desta UC estão no Moodle.
Software recomendado
- É preferível usar um sistema GNU/Linux
- Deve instalar os compiladores e algumas ferramentas de desenvolvimento: gcc, ghc, flex, bison, alex, happy, ssh, git
- Pode usar o seu editor de texto/IDE favorito
Bibliografia
- Introduction to Compiler Design, Torben Mogensen. Uma versão anterior deste livro está disponível livremente na página do autor: Basics of Compiler Design
- Modern Compiler implementation in ML., Andrew Appel. Disponível na biblioteca da FCUP.
Pedro Vasconcelos, 2022.