Introduzione ai compilatori in Python

Il talk si articola su due linee parallele: da un lato si danno brevi cenni sugli aspetti teorici della scrittura di compilatori, sulle problematiche da affrontare e sulle tecniche classiche per risolverle, dall'altro si mostra l'utilizzo pratico di alcune librerie Python per sviluppare un semplice compilatore avente per target la macchina virtuale CPython.

Come linguaggio di esempio si utilizza un semplice linguaggio di interrogazione dichiarativo (simile in spirito ad una versione molto ridotta di SQL) ed esempi tratti da un sottoinsieme di un linguaggio imperativo simile a Pascal. Per il front-end viene introdotta la libreria PLY, mentre per la generazione e manipolazione di bytecode viene utilizzata byteplay. Vengono poi dati cenni riguardo il funzionamento della macchina virtuale CPython per poter generare bytecode opportuno.

Gli obiettivi sono molteplici: fornire una breve introduzione alla scrittura di compilatori e interpreti in astratto, mostrare il funzionamento di alcune librerie Python e seppur a grandi linee della macchina virtuale CPython stessa e infine mostrare come alcune tecniche utilizzate nella scrittura di compilatori possano essere utili anche nello sviluppo di programmi appartenenti ad altri domini.

pycon2 in the track Scoprire Python.

Download


Language
IT
Duration
45 minutes
Simultaneous translation
available