N | Data | Ora | Aula | Tipo | Argomento |
1t | Mar 19/09 | 14-16 | C | teoria | Introduzione al corso e brevi cenni storici |
2t | Mer 20/09 | 11-13 | C | teoria | Astrazione e paradigmi di programmazione |
3t | Gio 21/09 | 16-18 | C | teoria | Alcuni concetti su Java
(capitoli 19, 20 e 23 delle
note)
e un testo introduttivo |
4t | Lun 25/09 | 16-18 | E | teoria |
Un modello operazionale
per Java (capitoli 22 e 23 delle
note)
e un tool per simularlo (basato su un altro tool) |
5t | Gio 28/09 | 16-18 | C | teoria | Sul dispatch dinamico (capitolo 24 delle note) |
6t | Lun 02/10 | 16-18 | E | teoria | Le eccezioni (capitolo 27 delle note), anche operazionalmente |
1e | Mar 03/10 | 14-16 | C | esercizi | La prima esercitazione (BYOD) |
7t | Mer 04/10 | 11-13 | C | teoria | Su specifica e implementazione dei tipi di dato (capitolo 5 di LG) |
2e | Gio 05/10 | 16-18 | C | esercizi | Ricevimento collettivo e soluzione prima esercitazione |
8t | Lun 09/10 | 16-18 | E | teoria | Ragionare sui tipi di dato (capitolo 5 di LG) |
9t | Mar 10/10 | 14-16 | C | teoria | Sul debugging e sulle gerarchie di tipi (capitoli 5 e 7 di LG) |
3e | Mer 11/10 | 11-13 | C | esercizi | La seconda esercitazione (BYOD) |
10t | Gio 12/10 | 16-18 | E | teoria | Ancora sul principio di sostituzione (capitolo 7 di LG) |
4e | Lun 16/10 | 16-18 | C | esercizi | Ricevimento collettivo e soluzione seconda esercitazione |
11t | Lun 23/10 | 16-18 | E | teoria | Introduzione ai generics (il colpevole e il tutorial originale) |
12t | Mar 24/10 | 14-16 | C | teoria | JCF: Java Collections Framework (con ArrayIterator e RevVector) |
5e | Mer 25/10 | 11-13 | C | esercizi | La terza esercitazione (BYOD) |
6e | Gio 26/10 | 16-18 | C | esercizi | Ricevimento collettivo e soluzione terza esercitazione |
-- | Ven 27/10 | 16-18 | C | esercizi | Una esercitazione extra |
-- | Gio 02/11 | 14-16 | A, E | verifica | Soluzione prima verifica (con le classi Game, ArrayGame e FullGame) |
7e | Lun 06/11 | 16-18 | E | esercizi | Soluzione prima verifica e presentazione primo progetto |
13t | Lun 13/11 | 16-18 | E | teoria | Implementare/compilare (con il draft originale) |
14t | Mar 14/11 | 14-16 | C | teoria | Rapida introduzione a OCaML (e un tool online) |
15t | Mer 15/11 | 11-13 | C | teoria | Realizzare un interprete in OCaML (con codice completo) |
8e | Lun 20/11 | 16-18 | E | esercizi | La quarta esercitazione (BYOD) |
16t | Mar 21/11 | 14-16 | C | teoria | Introduzione alla semantica operazionale (interprete ricorsivo e con codice intermedio) |
17t | Mer 22/11 | 11-13 | C | teoria | Sui dati (capitolo 8 di GM) (con i moduli Pila, SemPila, ImpPila, MPila e ImpMPila) |
18t | Gio 23/11 | 16-18 | C | teoria | Nomi e binding (capitolo 4 di GM) (con i moduli Env, FunEnv e ListEnv) |
19t | Lun 27/11 | 16-18 | E | teoria | Sulle procedure (capitoli 5 e 7 di GM) |
20t | Gio 30/11 | 16-18 | C | teoria | Implementare un linguaggio funzionale (e l'interprete di riferimento) |
9e | Lun 04/12 | 16-18 | E | esercizi | La quinta esercitazione (BYOD) |
21t | Mar 05/12 | 14-16 | C | teoria | Implementare classi e oggetti (capitolo 10 di GM) |
22t | Mer 06/12 | 11-13 | C | teoria | Implementare la garbage collection (capitolo 5 di GM) (la situazione in Java) |
10e | Gio 07/12 | 16-18 | C | esercizi | La sesta esercitazione (BYOD) |
-- | Lun 11/12 | 16-18 | C | esercizi | Una esercitazione extra (lezione rinviata per allerta meteo) |
23t | Mar 12/12 | 14-16 | C | teoria | Un esempio di simulazione del runtime stack |
11e | Mer 13/12 | 11-13 | C | esercizi | La settima esercitazione |
12e | Gio 14/12 | 16-18 | C | esercizi | Ricevimento collettivo, esercitazione extra e presentazione secondo progetto |
-- | Lun 18/12 | 14-16 | C, E | verifica | Soluzione (parziale) seconda verifica (con runtime) |
-- | Lun 15/01 | 16-18 | E | verifica | Soluzione primo appello (con le classi Agenda, MiaAgenda e MiaAgendaSC) |
-- | Lun 05/02 | 16-18 | E | verifica | Soluzione secondo appello (con le classi BoundedSortedMap, MyBoundedSortedMap e MyIntervalSortedMap) |