elenco    
        corso    

Programmazione I e laboratorio

Codice: 007AACrediti: 12Semestre: 1Sigla: PRL 
 
Settore disciplinare: INF/01 - Informatica

Docente

Maria Eugenia Occhiuto   occhiuto@di.unipi.it  Stanza 356  Tel. 0502212733

Prerequisiti

Nessuno, a parte la matematica di base delle scuole superiori.

Obiettivi di apprendimento

Il corso presenta i concetti di base della programmazione. A questo scopo vengono introdotti i concetti generali dei linguaggi di programmazione: grammatiche per descrivere la sintassi e sistemi di transizione per descrivere la semantica. Parallelamente viene introdotta la programmazione funzionale, attraverso l'uso del linguaggio Caml. Le tecniche per la descrizione di sintassi e semntica vengono esemplificate su un sottoinsieme del linguaggio C, per il quale viene definito l'interprete in Caml, le cui specifiche risultano dalla semantica definita.
Conoscenze. Conoscenze di base

Programma

Introduzione Sintassi: grammatiche libere, grammatiche regolari. Sintassi del nucleo di C. Semantica: Sistemi di transizione. Semantica operazionale del nucleo di C. Programmazione funzionale. Linguaggio Caml: tipi di dato primitivi, tipi complessi: funzioni, definizioni e applicazione, liste, prodotto cartesiano, tipi unione. Polimorfismo. Funzioni di ordine superiore. Interprete del C in Caml.
Ore lezione: 66Ore esercitazione: 22   

Bibliografia

D.Pedreschi, Elementi di Sintassi dei Linguaggi di Programmazione, Dispensa
G. Manco, Note di programmazione funzionale. Dispensa.
Testi consigliati in alternativa:
The functional Approach to Programming, G Cousineau and M Mauny, Cambridge University Press, 1995.
Introduzione alla programmazione funzionale M. Cialdea MayerC. Limongelli, Progetto Leonardo Ed. Esculapio, Bologna 2002.

Modalità di esame

Scritto e orale

Ulteriore pagina web del corso: http://www.di.unipi.it/~occhiuto/Programmazione.html


home


email