Studiare

In questa sezione è possibile reperire le informazioni riguardanti l'organizzazione pratica del corso, lo svolgimento delle attività didattiche, le opportunità formative e i contatti utili durante tutto il percorso di studi, fino al conseguimento del titolo finale.

Queste informazioni sono destinate esclusivamente agli studenti e alle studentesse già iscritti a questo corso.
Se sei un nuovo studente interessato all'immatricolazione, trovi le informazioni sul percorso di studi alla pagina del corso:

Laurea in Informatica - Immatricolazione dal 2025/2026

Il piano didattico è l'elenco degli insegnamenti e delle altre attività formative che devono essere sostenute nel corso della propria carriera universitaria.
Selezionare il piano didattico in base all'anno accademico di iscrizione.

1° Anno

InsegnamentiCreditiTAFSSD
6
A
FIS/01
6
A
INF/01
Lingua inglese competenza linguistica - liv.b1(completo)
6
E
-

2° Anno  Attivato nell'A.A. 2017/2018

InsegnamentiCreditiTAFSSD
12
B
INF/01
6
C
FIS/01
12
B
ING-INF/05
Un insegnamento a scelta

3° Anno  Attivato nell'A.A. 2018/2019

InsegnamentiCreditiTAFSSD
12
B
ING-INF/05
6
B
INF/01
Un insegnamento a scelta
6
B
INF/01
6
B
INF/01
Prova finale
6
E
-
InsegnamentiCreditiTAFSSD
6
A
FIS/01
6
A
INF/01
Lingua inglese competenza linguistica - liv.b1(completo)
6
E
-
Attivato nell'A.A. 2017/2018
InsegnamentiCreditiTAFSSD
12
B
INF/01
6
C
FIS/01
12
B
ING-INF/05
Un insegnamento a scelta
Attivato nell'A.A. 2018/2019
InsegnamentiCreditiTAFSSD
12
B
ING-INF/05
6
B
INF/01
Un insegnamento a scelta
6
B
INF/01
6
B
INF/01
Prova finale
6
E
-

Legenda | Tipo Attività Formativa (TAF)

TAF (Tipologia Attività Formativa) Tutti gli insegnamenti e le attività sono classificate in diversi tipi di attività formativa, indicati da una lettera.




S Stage e tirocini presso imprese, enti pubblici o privati, ordini professionali

Codice insegnamento

4S00041

Crediti

6

Lingua di erogazione

Italiano

Settore Scientifico Disciplinare (SSD)

INF/01 - INFORMATICA

Periodo

II semestre dal 4 mar 2019 al 14 giu 2019.

Obiettivi formativi

Il corso si propone di fornire le competenze necessarie per lo sviluppo e l'implementazione di compilatori e interpreti per semplici linguaggi di programmazione.
 Al termine del corso lo studente avrà acquisito le nozioni teoriche alla base delle varie fasi del processo di compilazione di un programma; avrà inoltre le capacità di applicare le conoscenze acquisite per utilizzare in modo competente gli strumenti per la generazione di parser e per la comprensione della struttura di linguaggi di programmazione di uso comune; infine, sarà in grado di approfondire autonomamente le nozioni avanzate necessarie nell’ambito dell’analisi statica e in generale delle tecniche di ottimizzazione nelle varie fasi della compilazione.

Programma

Il corso prevede 44 ore di lezioni frontali destinate a coprire il programma schematizzato di seguito. Per gli ultimi due argomenti dell'elenco riportato, sono previste ulteriori 12 ore di attività in laboratorio con esercitazioni al computer sotto la supervisione del docente. Oltre ai libri di testo, viene usata la piattaforma e-learning per mettere a disposizione degli studenti materiale didattico aggiuntivo, e.g. lucidi delle lezioni, esercizi e soluzioni, materiale di supporto per le attività in laboratorio.

Programma

* Introduzione al corso e alla tecnologia dei compilatori.
* Analisi lessicale.
* Analisi sintattica.
* Sintassi astratta.
* Analisi semantica (type-checking).
* Codice intermedio.
* Generazione del codice intermedio.
* Utilizzo di strumenti automatici per la generazione di analizzatori sintattici.
* Sviluppo in laboratorio di un compilatore per un semplice linguaggio funzionale.

Testi di riferimento
Autore Titolo Casa editrice Anno ISBN Note
Aho, A.V. and Lam, M.S. and Sethi, R. and Ullman, J.D. Compilatori: Principi, tecniche e strumenti (Edizione 2) Pearson 2009 978-88-7192-559-2
Alfred V. Aho, Monica S. Lam, Ravi Sethi, Jeffrey D. Ullman Compilers: Principles, Techniques, and Tools (2nd Edition) Pearson 2007 9780321486813
Torben Aegidius Mogensen Introduction to Compiler Design Springer 2011 978-0857298287

Modalità d'esame

L'esame e' inteso come una verifica dell'apprendimento delle nozioni fondamentali per la costruzione di un compilatore, nonché della conoscenza del particolare compilatore sviluppato in laboratorio.
Gli studenti devono rispondere per iscritto a quattro domande con risposta aperta di cui una e' riservata al lavoro svolto in laboratorio. Il punteggio assegnato ad ogni esercizio varia tra 0 (zero) e 7,5 per un totale massimo di 30/30.
La lode viene assegnata esclusivamente ad elaborati svolti correttamente che dimostrino con l'accuratezza dei dettagli e della presentazione piena padronanza della materia.

Le/gli studentesse/studenti con disabilità o disturbi specifici di apprendimento (DSA), che intendano richiedere l'adattamento della prova d'esame, devono seguire le indicazioni riportate QUI