Linguaggi e Compilatori


  • Un corso simile era attivato alla Laurea Magistrale in Computer Science fino all'anno accademico 2019/2020. La pagina di tale corso è disponibile al seguente link.
  • 29 Settembre 2020: Il corso verrà tenuto nel secondo semestre.

Docente:

ESSE3 Link

Orario:

  • Il corso è al secondo semestre: 1 Marzo 2021 - 11 Giugno 2021. Orario: Martedì 11-13 Aula LA1 Polo Lodovici e Giovedì 11-13 Aula LA1 Polo Lodovici

Stanza Webex

Ricevimento:

  • Via Webex o in presenza previo appuntamento con il docente via email.

Sigla Ufficiale:

  • La sigla ufficiale del corso è LC2021

Lezioni Registrate e Avvisi:


Si veda la Descrizione ESSE3


Si veda la Descrizione ESSE3


Lezioni Registrate e Avvisi

Libri di Testo

  • Alfred V. Aho, Monica S. Lam, Ravi Sethi and Jeffrey D. Ullman, Compilatori. Principi, tecniche e strumenti. Seconda Edizione, Pearson, 2009.
  • Terence Parr The Definitive ANTLR4 Reference, The Pragmatic Programmers, 2012.

Slides

Le slide seguenti sono in inglese, saranno incrementalmente tradotte in italiano:

Esercizi con Soluzioni

Anche i seguenti esercizi sono in inglese e verranno incrementalmente tradotti in italiano.

Analisi Lessicale:

Analisi Sintattica:

Analisi Semantica:

Esempi di prove scritte passate con soluzione (in inglese)


Progetto da inviare il giorno precedente delle prove parziali ESSE3 denominate “LC2021 APPELLO X - Consegna Progetto” in ogni appello X:

  1. La descrizione del progetto da realizzare tramite il tool ANTLR4 sarà disponibile durante lo svolgimento del corso tramite la piattaforma Google Classroom.

Date Esami A.A. 2020/2021

Per l'iscrizione alle prove parziali, sia scritte che per consegna del progetto, e per la registrazione del voto finale si consulti il Portale ESSE3 previo login.

Modalità di Esame

L'esame consiste di una prova scritta, contenente esercizi con risposta aperta, e di un progetto, da realizzare tramite il tool ANTLR4 (si veda la sezione “Progetto” qui sopra). La prova scritta e il progetto sono due prove parziali indipendenti (si vedano le date fissate in ESSE3) e possono essere superate anche in appelli differenti. Il voto finale, che è la media dei voti delle due prove parziali, può essere ottenuto e registrato solo se entrambe le prove parziali sono state superate con un voto di almeno 18/30.

L'iscrizione alla prova scritta deve essere fatta in ESSE3 entro la scadenza indicata.

Istruzioni per inviare il progetto

Gli studenti devono creare una cartella in Google Drive, usando il proprio account name.surname@studenti.unicam.it

Tale cartella deve contenere tutti i file relativi al progetto e una relazione scritta che descrive tutte le fasi di sviluppo dello stesso. Si possono usare screenshot per mostrare, nella relazione, le esecuzioni e i risultati del codice.

La cartella deve avere il seguente nome:

LC2021-Progetto-APP-X-Cognome-Nome

dove X è il numero dell'appello in cui si consegna.

La cartella deve essere condivisa con luca.tesei@unicam.it entro le ore 18.00 del giorno indicato nelle prove parziali ESSE3 denominate “LC2021 APP X Consegna Progetto”. L'iscrizione su ESSE3 a tale prova deve essere fatta entro il giorno precedente.

Risultati dell'Esame

  • I risultati delle prove parziali verranno comunicati tramite email o tramite ESSE3 (dipende dal numero di studenti)
  • Una valutazione positiva (>=18/30) di una singola prova parziale rimane valida un anno solare a partire dalla data in cui è stata ottenuta oppure appena lo studente riconsegna una prova parziale dello stesso tipo.
  • Se i voti delle due prove parziali sono entrambi disponibili e accettati, il voto finale può essere registrato in ESSE3 utilizzando gli appelli denominati “LC2021 APP X Registrazione Voto Finale” e iscrivendosi ad esse entro la data di scadenza indicata.