Diario delle lezioni

Il seguente diario riporta gli argomenti e il materiale didattico e di supporto relativo sia alle lezioni già svolte (riguardo alle quali costituisce il programma d'esame de facto), che alle lezioni ancora da svolgere, per le quali è da intendersi del tutto indicativo (sia riguardo alle date che al contenuto). Le lezioni si svolgono di norma dalle 11:30 alle 13:30, se accanto al numero della lezione compare il carattere E alla lezione è associata una esercitazione per cui l'orario viene esteso (come comunicato di volta in volta dal docente).

Il materiale didattico indicato come TPT si riferisce al documento The Python Tutorial, mentre quello indicato con PT si riferisce al libro di testo Parsing Techniques. A Practical Guide; il materiale indicato come H si riferisce agli Handout del docente; si veda la nota sui numeri di sezione che reca indicazioni su quali parti del materiale sono parte del programma e quali letture consigliate, ma facoltative.


Num

Data

Argomento

Materiale didattico

1

Mar 25/2

Obiettivi e struttura del corso

PT 1

2

3

Gio 28/2

Mar 05/3

Introduzione a Python

Strutture dati ed algoritmi di base per alberi e grafi

TPT 3; TPT 4 1-6; H 2

TPT 5; TPT 9 1-4; H 3

Vacanze di carnevale (1 lezione)

4

5

Mar 12/3

Gio 14/3

Grammatiche e linguaggi

PT 2 1-3; H 4

PT 2 1-4, 9 [5-8, 10-12]; H 5

6

7

Mar 19/3

Gio 21/3

Introduzione al parsing

PT 3 1, 2; H 6

PT 3 3, 4.1-3, 5.1-5, 8 [4.4-5, 9-10]

8

9

Mar 26/3

Gio 28/3

Parsing, caso generale non direzionale (CYK)

PT 4

10

Mar 2/4

Linguaggi regolari e automi a stati finiti

PT 5

11

12

13

Gio 4/4

Mar 9/4

Gio 11/4

Parsing Top-Down (Recursive descent, Continuation…)

PT 6

14

Mar 16/4

Parsing Bottom-Up

PT 7

Vacanze di Pasqua (3 lezioni)

15

16

Mar 30/4

Gio 2/5

Parsing deterministico Top-Down (LL)

PT 8

17

17E

Mar 7/5

Mar 7/5

Parsing deterministico Bottom-Up (LR)

PT 9

18

Gio 9/5

ANTLR

19

19E

Mar 14/5

Mar 14/5

Alberi sintattici (annotati)

20

21

21E

Gio 16/5

Mar 21/5

Mar 21/5

Transpilatori

22

23

23E

24

Gio 23/5

Mar 28/5

Mar 28/5

Gio 30/5

Interpreti

Fine corso

25

26

Mar 4/6

Gio 6/6

Fine semestre


Nota bene

Accanto a ciascun riferimento che reca un numero di capitolo possono trovarsi dei numeri di sezione essi sono da intendersi nel seguente modo:

  • se assenti: l'intero capitolo è parte del programma (ad esempio, con "TPT 5" si intende l'intero capitolo 5 di The Python Tutorial),

  • se presenti (fuori parentesi): solo le sezioni indicate sono parte del programma (ad esempio, con "PT 2 1-4, 9" si intende che del capitolo 2 di Parsing Techniques. A Practical Guide sono strettamente parte del programma solo le sezioni 1, 2, 3, 4 e 9),

  • se presenti tra parentesi quadre: le sezioni indicate sono letture caldamente raccomandate, ma facoltative (ad esempio con "PT 2 [5-8, 10-12]" si intende che del capitolo 2 di Parsing Techniques. A Practical Guide è consigliata la lettura delle sezioni 5, 6, 7, 8, 10, 11 e 12).