Palestra: Manipulando Abstract Syntax Trees (ASTs) para gerar SQL com Quill

Track: Ciência da Computação no mundo real

Sala: Sala 1

Horário: 11:50am - 12:35pm

Dia da semana: Terça-feira

Nível: Avançado

Persona: Arquiteto(a), Desenvolvedor(a) Programador(a), Desenvolvedor(a) Sênior, Líder Técnico(a)

Apresentação em Português

Share this on:

Pontos Principais

  • Como manipular o compilador ao seu favor, gerando código mais seguro
  •  Conhecimento de compilação do código aplicados em ferramentas reais
  •  Conhecimento sobre ASTs levando a otimização de código

Resumo

Quill é um LINQ (Consulta Integrada à Linguagem) para Scala, o qual transforma código Scala comum em SQL em tempo de compilação, sem nenhum mapeamento especial, usando apenas case classes e funções.

Para transformar o código Scala em SQL, Quill usa um mecanismo chamado quote. Com esse mecanismo, em vez de executado imediatamente, o código se torna uma árvore de análise que é transformada em uma Árvore de Sintaxe Abstrata interna, ou AST. Quill lê as informações internas do AST, as normaliza e então as transforma em instruções SQL.

Nesta sessão, você aprenderá como o Quill usa o compilador para gerar código SQL seguro. Você ouvirá sobre como o compilador funciona, como gerar ASTs, como manipulá-las e analisá-las, como fazer inferências e até executar otimizações de código.

Palestrante: Juliano Alves

Senior Software Engineer at TransferWise

Juliano Alves é especializado em Engenharia de Software pela PUC-SP e considera desenvolver software uma arte. Um entusiasta da comunidade open-source, acredita profundamente que o futuro pertence aos programadores funcionais e poliglotas. Hoje vive em Londres, escrevendo código que move bilhões por mês, na TransferWise.

Find Juliano Alves at

Tracks