Linguaggi formali e automi

Struttura insegnamento e programma

Edizione attiva
Programma
1. Introduzione. Linguaggi e compilatori.
2. Teoria dei linguaggi formali. Concetti di base. Grammatiche. Classificazione di Chomsky. Automi e macchine di Turing.
3. Linguaggi regolari. Grammatiche regolari. Espressioni regolari. Automi a stati finiti.
4. Linguaggi liberi dal contesto. Grammatiche libere dal contesto. Automi a pila.
5. Compilatori. Struttura dei compilatori. Fasi di lavoro di un compilatore.
6. Analisi lessicale. Token e loro codifica.
7. Analisi sintattica. Gestione degli errori. Ottimizzazione del codice. Gestione degli errori.
8. Analisi semantica. Grammatiche ad attributi
Informazioni sul programma
La frequenza è fortemente consigliata
Propedeuticità
Nessuna
Prerequisiti e modalità di esame
Prerequisiti
Concetti di informatica di base

Modalità d'esame

L'esame consiste in una prova scritta, che comprende sia domande di
teoria sia esercizi, volta ad accertare le conoscenze acquisite dallo
studente sulla materia.
Metodi didattici
Lezioni frontali
Materiale didattico e bibliografia
· S. Crespi Reghizzi, "Linguaggi formali e compilazione," Pitagora editrice, 2006.
· Slide disponibili sul sito web del corso
Periodo
Secondo semestre
Periodo
Secondo semestre
Modalità di valutazione
Esame
Giudizio di valutazione
voto verbalizzato in trentesimi
Docente/i
Ricevimento:
Su appuntamento
Dipartimento di Informatica - Sede di Crema