Resumo: Alfred Aho e Jeffrey Ullman foram laureados com o prêmio [Turing 2021](//awards.acm.org/about/2020-turing) por suas contribuições em linguagens de programação e sua implementação. O famoso "Livro do Dragão" é referência na maior parte dos cursos de Computação pelo mundo. Um compilador é essencialmente uma função definida por indução estrutural sobre a sintaxe da linguagem de origem, emitindo código a cada passo indutivo, o que na terminologia de construção de compiladores costuma se chamar de _tradução dirigida por sintaxe_. Usualmente, o _framework_ de tradução é uma linguagem de programação de espectro amplo acoplada à um gerador de analisador sintático. Essa liberalidade pode ser maléfica pela falta de estrutura das equações semânticas, o que um framework específico para tradução pode trazer. Metaprogramação, onde metaprogramas são relações entre programas, se encaixa exatamente neste ponto, apresentando uma estrutura relacional que pode ser entendida _formalmente_, com todos os benefícios que a formalização traz. Neste seminário, apresentaremos como a linguagem Maude pode ser utilizada para este fim: um framework para compilação via metaprogramação.
Biografia: Christiano Braga é atualmente Professor Associado do Instituto de Computação da Universidade Federal Fluminense. Obteve seu doutorado pela PUC-Rio em 2001, com um período como International Fellow no Computer Science Laboratory do SRI International. Após seu doutoramento, foi pesquisador visitante na University of Illinois at Urbana-Champaign, Universidade Complutense de Madrid, University of Swansea e PUC-Rio. Seus interesses em pesquisa incluem métodos formais e semântica de linguagens de programação. Grande parte de sua pesquisa está desenvolvida utilizando Lógica de Reescrita como um framework semântico na linguagem Maude.