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:
📚 Slides:
➡️ https://github.com/PythonBiellaGroup/ANTLR/blob/main/slides/ANTLR-03.pdf
📚 Strumenta community:
➡️ https://strumenta.community/