CODICE 90546 ANNO ACCADEMICO 2025/2026 CFU 6 cfu anno 1 COMPUTER SCIENCE 11964 (LM-18) - GENOVA SETTORE SCIENTIFICO DISCIPLINARE INF/01 LINGUA Inglese SEDE GENOVA PERIODO 2° Semestre MATERIALE DIDATTICO AULAWEB PRESENTAZIONE Agli studenti verrà fornita una conoscenza più profonda e critica dei linguaggi di programmazione, attraverso l'apprendimento di fondamenti teorici e il confronto di diversi paradigmi. OBIETTIVI E CONTENUTI OBIETTIVI FORMATIVI Acquisire una conoscenza più approfondita e critica dei linguaggi di programmazione, attraverso l’apprendimento delle basi teoriche e il confronto tra diversi paradigmi. OBIETTIVI FORMATIVI (DETTAGLIO) E RISULTATI DI APPRENDIMENTO Al termine del corso, lo studente/la studentessa sarà in grado di: Comprendere in modo approfondito i concetti presentati durante il corso. Praticare con una certa competenza i paradigmi di programmazione proposti. PREREQUISITI Non sono necessari prerequisiti specifici. MODALITA' DIDATTICHE Lezioni frontali e piccolo progetto. PROGRAMMA/CONTENUTO Fondamenti: semantica a piccoli passi, sistemi di tipi, correttezza (soundness) Paradigma funzionale: calcolo lambda, call-by-value e call-by-name, lambda-calcolo semplicemente tipato, polimorfismo, inferenza di Hindley-Milner. Programmazione funzionale in Haskell, valutazione lazy, classi di tipi. Effetti: estensioni del calcolo lambda con caratteristiche imperative e gestione delle eccezioni Paradigma orientato agli oggetti: sottotipizzazione, Featherweight Java Paradigma logico: sintassi di Prolog, semantica modello-teorica, risoluzione SLD Coinduzione e programmazione logica coinduttiva TESTI/BIBLIOGRAFIA Appunti del corso. Benjamin Pierce, Types and Programming Languages. DOCENTI E COMMISSIONI FRANCESCO DAGNINO Ricevimento: Su appuntamento per email Commissione d'esame FRANCESCO DAGNINO (Presidente) DAVIDE ANCONA ELENA ZUCCA SCHILLANI (Presidente Supplente) LEZIONI INIZIO LEZIONI In accordo con il calendario didattico approvato dal Consiglio dei Corsi di Studio in Informatica: https://corsi.unige.it/corsi/11964/studenti-orario Orari delle lezioni L'orario di questo insegnamento è consultabile all'indirizzo: Portale EasyAcademy ESAMI MODALITA' D'ESAME L’esame consisterà in una prova orale e, eventualmente, nello sviluppo di un piccolo progetto. ndicazioni per studenti con certificazione di DSA, di disabilità o di altri bisogni educativi speciali sono disponibili a partire da https://corsi.unige.it/corsi/11964/studenti-disabilita-dsa MODALITA' DI ACCERTAMENTO L’esame orale verifica la corretta comprensione dei concetti e la capacità di presentarli in modo appropriato. Lo sviluppo di un piccolo progetto attesta che lo studente ha sperimentato i paradigmi di programmazione proposti. Calendario appelli Data appello Orario Luogo Tipologia Note 20/02/2026 09:00 GENOVA Esame su appuntamento 31/07/2026 09:00 GENOVA Esame su appuntamento 18/09/2026 09:00 GENOVA Esame su appuntamento ALTRE INFORMAZIONI Per ulteriori informazioni, consultare il modulo Aulaweb dell'insegnamento o contattare il docente.