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 magistrale in Ingegneria e scienze informatiche - 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.

CURRICULUM TIPO:

1° Anno 

InsegnamentiCreditiTAFSSD
12
B
ING-INF/05
12
B
INF/01
12
B
ING-INF/05
InsegnamentiCreditiTAFSSD
12
B
ING-INF/05
12
B
INF/01
12
B
ING-INF/05
Insegnamenti Crediti TAF SSD

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

4S02789

Crediti

6

Lingua di erogazione

Italiano

Settore Scientifico Disciplinare (SSD)

INF/01 - INFORMATICA

Periodo

I semestre dal 4 ott 2010 al 31 gen 2011.

Per visualizzare la struttura dell’insegnamento a cui questo modulo appartiene, consultare:  organizzazione dell'insegnamento

Obiettivi formativi

L'obiettivo del corso è quello di presentare le basi teoriche dei linguaggi di programmazione. A tale scopo verranno introdotti vari linguaggi sequenziali paradigmatici anche di ordine superiore. Tutto il corso sarà incentrato sui concetti di semantica operazionale e di sistema di tipo. Verranno introdotte alcune tecniche formali per la verifica del comportamento dei programmi.

Programma

Induzione:
(i) Induzione matematica sui numeri naturali;
(ii) Induzione strutturale;
(iii)Induzione su un sistema di inferenza.

Semantica operazione:
Semantica big step e small step per semplici linguaggi sequenziali, tra cui:
(i) Exp, Bool, linguaggi per espressioni aritmetiche e booleane.
(ii) Il linguaggio imperativo While dei comandi while
(iii)I linguaggi funzionali Fun e Lambda e loro variazioni; semantiche call-by-name e call-by-value.

Sistemi di tipo
(i) Assegnamenti di Tipo per i linguaggi Fun e Lambda
(ii) Le proprieta' di Progress and preservation.
(iii) Per il linguaggio Lambda lo studente dovra' conoscere le consequenze computazionali dell'uso dei tipi; in particolare la necessita' di usare operatori espliciti di punto fisso.

Testi di riferimento
Autore Titolo Casa editrice Anno ISBN Note
Carl A. Gunter Semantics of Programming Languages MIT Press 1992 0262570955
G. Winskel The formal Semantics of Programming Languages MIT Press 1993

Modalità d'esame

L'esame consiste in una prova scritta e una eventuale prova orale, a discrezione del docente.

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

Materiale e documenti