Università di Pisa
Anno Accademico 2016-17
docente: prof. Marco Bellia
Guida allo studio del materiale. La partecipazione alla lezione è il primo fondamentale passo per lo studio del corso e del materiale relativo. La lezione infatti, introduce e discute, in modo conveniente, il materiale selezionato per lo studio degli argomenti trattati e, fornisce indicazioni su letture complementari per un loro possibile approfondimento. Il passo successivo è la revisione individuale del contenuto delle slide presentate. Questa revisione deve essere condotta prima della successiva lezione e deve consistere nel ri-considerare ogni affermazione, formulazione ed esempio, contenuti, e motivare ciascuno di questi utilizzando le parti del testo indicato (e riportato nel diario delle attività, sotto). In questa revisione anche le letture complementari possono risultare utili. Ultimata questa revisione, occorre considerare e risolvere tutti gli esercizi proposti: Si può usare questa attività come base per riflettere su quanto studiato e sfidarsi sulla soluzione di problemi ancora più complessi di quelli proposti. Infine, occorre annotare ogni domanda o dubbio emersi e usare il ricevimento per discuterli con i docenti durante la settimana.
Lunedì 27/2 | Presentazione del corso | Presentazione |
---|---|---|
Martedì 28/2 | Principi di Calcolabilità: Funzioni Calcolabili e Programmi | Lezione1 |
Giovedì 2/3 | Calcolabilità, Algoritmi e Linguaggi di Programmazione | Lezione2 |
Venerdì 3/3 | Annullata | |
Lunedì 6/3 | Macchina Astratta: Struttura e Realizzazione. |
Lezione3 (1-9) [GM] cap.1 |
Martedì 7/3 | Interprete, Compilatore: Confronti, Front-End, RTS Sintassi: Gramatiche, Derivazione, Ambiguità |
Lezione3 (10-16) Lezione4 (1-12) [GM] cap.2 |
Mercoledì 8/3 | Completamenti ed Esercizi | testo-esercizi , Testo+Soluzioni |
Giovedì 9/3 | Annullata | |
Lunedì 13/3 | Semantica: Denotazionale, Operazionale e SOS | Lezione4 (12-fine) [GM] cap.2 |
Martedì 14/3 | Modelli di Calcolo: Lambda Calcolo, Logica Combinatoria, Macchine a Stato | Lezione5 (1-9) [GM] cap.3, par.11.6 |
Mercoledì 15/3 | Completamenti ed Esercizi | Lezione5 (10-17) esercizi |
Giovedì 16/3 | Laboratorio Definiamo SmallC: Sintassi, Semantica | Laboratorio1 |
Lunedì 20/3 | Completamenti ed Esercizi | Lezione5(18-20) testo-esercizi Testo+Soluz. |
Martedì 21/3 | Ambiente: Binding, Scope. Memoria: Statica, Dinamica | Lezione6 (1-17) [GM] cap.4-5 |
Mercoledì 22/3 | Controllo di Sequenza: Statements atomici e strutturati | Lezione7 [GM] cap6.1 |
Giovedì 23/3 | Laboratorio Strumenti di Sviluppo: Ocaml - Istallazione e uso | Esercizi + Ocaml:Listing1 |
Lunedì 27/3 | Espressioni (divergenza, side effects), Comandi controllo sequenza | Lezione7[4-14](4-14) [GM] cap.6.2-3 |
Martedì 28/3 | Ricorsione, Tail Recursion e Memoization. Programmazione Strutturata. Astrazioni di Controllo: introduzione |
C:Listing + Lezione7[14-23] [GM] cap.6.4-5 |
Mercoledì 29/3 | Completamenti ed Esercizi | testo&soluzione QSort2 Qsort3 |
Giovedì 30/3 | Laboratorio Ocaml: Uso. Sviluppo: Dcl | Uso + Dcl + Sviluppo |
Lunedì 3/4 | Astrazioni di controllo: Trasmissione per Valore, Costante, Reference, Risultato, Valore-Risultato, Nome, di Funzione. Higher Order ed Eccezioni | Lezione8 |
Martedì 4/4 | Completamenti ed Esercizi | Testo Testo+Soluzioni |
Mercoledì 5/4 | Trasmissione di Funzione. Esercizio:Trasmissione per Nome. | Esercizio:TrasmXNome |
Giovedì 6/4 | attività rinviata al 10/4 | |
Lunedì 10/4 | Laboratorio: Exp, Cmd, Prog. Env&Store | Uso + Exp,Cmd,Prog,Store + Sviluppo |
Martedì 11/4 | Higher Order, Eccezioni. Dati e Tipi. | Lezione9 [GM] cap.8-8.8 |
Mercoledì 12/4 | Tipi Astratti | Lezione10 [GM] cap.9 |
Giovedì 13/4 | Attività Rinviata al 20/4 | |
Lunedì 17/4 | Vacanza Accademica |
|
Martedì 18/4 | Vacanza Accademica | |
Mercoledì 19/4 | Annullata | |
Giovedì 20/4 | Laboratorio: Env&Store, Semantica dcl, Implementazione | Env&Store&dcl + Sviluppo |
Lunedì 24/4 | Tipi Astratti: AF, I. Moduli | Lezione10 slides 8-15 |
Martedì 25/4 | Festa Nazionale | |
Mercoledì 26/4 | Linguaggi Object Oriented: Principi | Lezione11 slide 1-13,18 [GM] cap.10 |
Giovedì 27/4 | Laboratorio: dcl , Semantica Exp, Implementazione OCaml | dclSem + Sviluppo |
Lunedì 1/5 | Festa Nazionale | |
Martedì 2/5 | Linguaggi Object Oriented: Java Basic 1 | Lezione11 15-17 Lezione12 1-5 |
Mercoledì 3/5 | Linguaggi Object Oriented: Java Basic 2 | Lezione12 |
Giovedì 4/5 | Laboratorio: exp, Implementazione OCaml | expSem + Sviluppo |
Lunedì 8/5 | Linguaggi Object Oriented: Java Basic 3 | Lezione13 Esercizi5 |
Martedì 9/5 | Completamenti ed Esercizi | Esercizi5:testo+Listing+Soluzione (aggiornato) |
Mercoledì 10/5 | Java: Eccezioni+Astrazioni e Riuso | Lezione14 |
Giovedì 11/5 | Laboratorio: exp, Semantica Cmd, Implementazione OCaml | cmdSem + Sviluppo |
Lunedì 15/5 | Completamenti ed Esercizi | Lezione15 + Listing |
Martedì 16/5 | Java Additionals: equals, clone, toString, elements | Lezione16 + Listing + Vector
|
Mercoledì 17/5 | Linguaggi Funzionali: Principi | Lezione17 + Listing |
Giovedì 18/5 | Laboratorio: Sincronizzazione Codice Prodotto | SmallC + Sviluppo |
Lunedì 22/5 | Completamenti ed Esercizi: Astrazioni in java, Ocaml | Testi (1,2)+ Listings&Soluzioni |
Martedì 23/5 | Completamenti ed Esercizi: Estensioni e Additionals | Testi (3,4) + Listing&Soluzioni + Clone: Metodologia |
Mercoledì 24/5 | Completamenti ed Esercizi: Estensioni e Additionals | Testi (5,7) + Listing&Soluzioni |
Giovedì 25/5 | Laboratorio: Conclusioni e Comunicazione Valutazioni | SmallC + Sviluppo |
Lunedì 29/5 | Completamenti ed Esercizi | Testi + Listing&Soluzioni |
Martedì 30/5 | Esercizi: Astrazioni in Java | Testi + Listing&Soluzioni |
Mercoledì 31/5 | Esercizi: Estensioni in Java | Testi + Listing&Soluzioni |
Giovedì 1/6 | Esercizi: Estensioni in Ocaml e Java | Testi + Listing&Soluzioni (*) |
Lunedì 19/6 | Appello: Prova Preliminare AULA P1 - ORA 9:00 |
Testo - - Soluzione - - Comunicazioni |
Venerdì 23/6 | Prova Finale AULA E1 - ORA 15:00 |
Iscrizione |
Venerdì 30/6 | Prova Finale AULA E1 - ORA 15:00 |
Iscrizione |
Giovedì 6/7 | Appello: Prova Preliminare AULA P1 - ORA 9:00 |
Testo - - Soluzione - - Comunicazioni |
da fissare | Prova Finale AULA - ORA |
Comunicazioni |
Lunedì 24/7 | Appello: Prova Preliminare AULA P1 - ORA 9:00 |
Testo - - Soluzione - - Comunicazioni |
da fissare | Prova Finale AULA - ORA |
Comunicazioni |