01.11.2012 Views

Laboratorio di programmazione - Computer Science - Università ...

Laboratorio di programmazione - Computer Science - Università ...

Laboratorio di programmazione - Computer Science - Università ...

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Parte II<br />

• Semantica delle strutture <strong>di</strong> controllo <strong>di</strong> flusso.<br />

• Chiamate <strong>di</strong> procedura. Scoping statico e <strong>di</strong>namico.<br />

• Stack <strong>di</strong> attivazione.<br />

• Eccezioni.<br />

• Concorrenza.<br />

• Linguaggi <strong>di</strong> <strong>programmazione</strong> per il web. CGI.<br />

• Esempi <strong>di</strong> linguaggi <strong>di</strong> <strong>programmazione</strong>: Fortran, C, Pascal, C++, Java, ML, Prolog.<br />

• Le fasi <strong>di</strong> un compilatore.<br />

• Un semplice linguaggio imperativo: Tiger.<br />

• Analisi lessicale.<br />

• Automi a stati finiti.<br />

• Uno strumento per l'analisi lessicale: JLex.<br />

• Analisi sintattica.<br />

• Grammatiche LR(k).<br />

• Uno strumento per l'analisi sintattica: Cup.<br />

• Sintassi astratta.<br />

• Analisi semantica.<br />

• Generazione del co<strong>di</strong>ce interme<strong>di</strong>o.<br />

• Selezione delle istruzioni.<br />

• Analisi <strong>di</strong> liveness.<br />

• Analisi dataflow.<br />

• Ottimizzazione dei cicli.<br />

Testi <strong>di</strong> riferimento<br />

• Pratt: ``Linguaggi <strong>di</strong> Programmazione''. Gruppo e<strong>di</strong>toriale Jackson. Oppure la versione inglese, Pratt<br />

& Zelkowitz: ``Programming Languages: Design and Implementation'', Prentice Hall−International.<br />

• Andrew W. Appel: ``Modern Compiler Implementation in Java''. Cambridge University Press.<br />

Modalità d'esame<br />

L'esame è formato da un progetto, uno scritto e un orale. Il progetto consiste in una mo<strong>di</strong>fica del compilatore<br />

per Tiger descritto durante il corso.<br />

Modalità d'esame non inserito<br />

Logica matematica<br />

Docente Ruggero Ferro − titolare<br />

Cre<strong>di</strong>ti 6<br />

Periodo 2º quadrimestre

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!