Vai al contenuto

Parser, intepreter e compilatori

Intro

Vediamo insieme ad Alessio Stalla di Strumenta come generare codice, ovvero come si costruisce un compilatore o un transpiler. Partendo dalle differenze tra interprete e compilatori e da alcuni concetti "fluidi" che li riguardano, arriveremo alla generazione di codice attraverso un esempio di generatore di codice Python (quindi di alto livello). Vedremo un esempio di generazione tramite templating e un esempio tramite AST, o più precisamente tramite CST, usando la libreria libcst creata e gestita da Istagram.

Alessio è un membro di Strumenta, specializzata in servizi di ingegneria linguistica per la creazione di DSL, linguaggi di programmazione, editor, compilatori, interpreti, debugger e simulatori.

Materiale

📚 Repository:

Github

📚 Slides:

➡️ https://github.com/PythonBiellaGroup/ANTLR/blob/main/slides/ANTLR-03.pdf

📚 Strumenta community:

➡️ https://strumenta.community/

Video del meetup