Presentare i principali concetti della teoria dei linguaggi formali e la loro applicazione alla classificazione dei linguaggi di programmazione. Introdurre le principali tecniche per l'analisi sintattica dei linguaggi di programmazione. Imparare a riconoscere la struttura di un linguaggio di programmazione e le tecniche per implementarne la macchina astratta. Conoscere il paradigma orientato agli oggetti e un altro paradigma non imperativo.
scheda docente
materiale didattico
[2] Dean Wampler, Alex Payne, Programming Scala: Scalability = Functional Programming + Objects, 2 edizione. O’Reilly Media, (2014).
[3] David Parsons, Foundational Java Key Elements and Practical Programming. Springer- Verlag, (2012).
Appunti del docente - Slide del corso a cura del docente
Mutuazione: 20410427 IN490 - LINGUAGGI DI PROGRAMMAZIONE in Scienze Computazionali LM-40 LOMBARDI FLAVIO
Programma
Il corso di Linguaggi di Programmazione ha come obiettivo quello di presentare i principali concetti della teoria dei linguaggi formali e la loro applicazione alla classificazione dei linguaggi di programmazione. Introdurre le principali tecniche per l'analisi sintattica dei linguaggi di programmazione. Imparare a riconoscere la struttura di un linguaggio di programmazione e le tecniche per implementarne la macchina astratta. Conoscere il paradigma orientato agli oggetti ed altri paradigmi non imperativi.Testi Adottati
[1] Maurizio Gabbrielli, Simone Martini, Linguaggi di programmazione - Principi e paradigmi, 2/ed. McGraw-Hill, (2011).[2] Dean Wampler, Alex Payne, Programming Scala: Scalability = Functional Programming + Objects, 2 edizione. O’Reilly Media, (2014).
[3] David Parsons, Foundational Java Key Elements and Practical Programming. Springer- Verlag, (2012).
Appunti del docente - Slide del corso a cura del docente
Modalità Erogazione
Lo svolgimento prevede lezioni (fortemente consigliate), esercitazioni, seminari, simulazioni e laboratoriModalità Frequenza
La partecipazione attiva alle lezioni ed esercitazioni è fortemente consigliata,Modalità Valutazione
La valutazione prevede una prova scritta sugli argomenti del corso (durata 2 ore circa 16 domande) più la implementazione di un progetto software concordato con il docente e della relativa documentazione