Aula 35: Seminários de Linguagens Modernas
Objetivos
- Explorar o futuro dos compiladores.
- Rust, Clang e DSLs.
Enfoque da aula
Esta aula expande a visão do aluno para além do projeto Mini-Pascal, mostrando:
- Como técnicas estudadas na disciplina aparecem em compiladores de linguagens modernas (Rust, Swift, linguagens de IA).
- Como novas infraestruturas (MLIR, frameworks de otimização para GPU/TPU) reutilizam os mesmos princípios de análise e transformação de programas.
- Como DSLs são projetadas pensando em compilação eficiente para domínios específicos (bancos de dados, infraestrutura, aprendizado de máquina).
Conteúdo
Para fechar o curso, olhamos para fora. O que está acontecendo no mundo real?
- Rust: O compilador (
rustc+ LLVM) como “fiscal”. O Borrow Checker é uma análise estática (semântica) avançadíssima que previne erros de memória sem Garbage Collector. - MLIR: A evolução do LLVM. Uma IR para representar outras IRs, focada em otimizações de alto nível (TensorFlow, Aceleradores de IA).
- DSLs (Domain Specific Languages): Compiladores pequenos focados em nichos (ex.: SQL, HTML, Terraform). As técnicas vistas na disciplina (léxico, sintático, semântica, IR) se aplicam integralmente.
Materiais da aula
Última atualização: 08/03/2026