Linguaggi e compilatori (2009/2010)

Codice insegnamento
4S02726
Crediti
12
Coordinatore
Andrea Masini
Altri corsi di studio in cui è offerto
L'insegnamento è organizzato come segue:
Modulo Crediti Settore disciplinare Periodo Docenti
COMPILATORI 6 INF/01-INFORMATICA II semestre Andrea Masini
LINGUAGGI 6 INF/01-INFORMATICA I semestre Andrea Masini

Obiettivi formativi

Modulo: COMPILATORI
-------
Introdurre le tecniche di traduzione automatica del codice. Formalizzare il controllo semantico del codice e i ragionamenti sulla sua struttura. Apprendere a scrivere piccoli traduttori automatici.


Modulo: LINGUAGGI
-------
Il corso insegna i concetti fondamentali dei linguaggi di programmazione, quali funzioni, tipi, gestione della memoria, e controllo. L’obiettivo è dare agli studenti una comprensione approfondita dei problemi e dei compromessi che si incontrano anella progettazione di linguaggi di programmazione. Questa comprensione permette agli studenti di cogliere vantaggi e svantaggi dei linguaggi che usano,in modo da saper valutare la scelta del linguaggio di programmazione rispetto all’applicazione che si vuole realizzare.

Programma

Modulo: COMPILATORI
-------
Analisi lessicale del codice informatico. Analisi sintattica: classificazione dei linguaggi informatici sulla base delle tecniche di analisi sintattica che possono analizzarli. Sintassi astratta del codice e sua implementazione in un linguaggio a oggetti. Analisi semantica del codice: controllo dei tipi, posizione dei costrutti sintattici, determinazione del codice morto. Generazione del codice intermedio. Generazione del codice oggetto. Analisi e ottimizzazione del codice.


Modulo: LINGUAGGI
-------
Funzioni. Macchine virtuali: interpreti e compilatori. Descrizione di un linguaggio di programmazione:sintassi (grammatiche non contestuali). Semantica operazionale strutturata: sistemi di transizione. Sistema dei tipi,interferenza di tipo e polimorfismo. Gestione della memoria:regole di visibilità, funzioni e procedure, passaggio di parametri. Controllo: strutturazione ed astrazione, eccezioni. Dati: astrazione e modularità, il sistema dei moduli. Tutti gli argomenti sono presentati anche attraverso uno o più linguaggi, ed in particolare un linguaggio adottato come “linguaggio-scuola” (ad esempio ML).

Modalità d'esame

Modulo: COMPILATORI
-------
L'esame consiste in una prova scritta


Modulo: LINGUAGGI
-------
L'esame consiste in una prova scritta,

Statistiche per i requisiti di trasparenza (Attuazione Art. 2 del D.M. 31/10/2007, n. 544)

Statistiche esiti
Esiti Esami Esiti Percentuali Media voti Deviazione Standard
Positivi 37.5% 24 4
Respinti 3.57%
Assenti 53.57%
Ritirati 5.35%
Annullati --
Distribuzione degli esiti positivi
18 19 20 21 22 23 24 25 26 27 28 29 30 30 e Lode
4.7% 14.2% 9.5% 4.7% 4.7% 9.5% 4.7% 4.7% 4.7% 4.7% 0.0% 14.2% 9.5% 9.5%

Valori relativi all'AA 2009/2010 calcolati su un totale di 56 iscritti. I valori in percentuale sono arrotondati al numero intero più vicino.