Gennaro COSTAGLIOLA | COMPILATORI
Gennaro COSTAGLIOLA COMPILATORI
cod. 0522500069
COMPILATORI
0522500069 | |
DIPARTIMENTO DI INFORMATICA | |
CORSO DI LAUREA MAGISTRALE | |
INFORMATICA | |
2015/2016 |
ANNO CORSO 2 | |
ANNO ORDINAMENTO 2010 | |
SECONDO SEMESTRE |
SSD | CFU | ORE | ATTIVITÀ | |
---|---|---|---|---|
INF/01 | 6 | 48 | LEZIONE |
Obiettivi | |
---|---|
IL CORSO INTRODUCE GLI STUDENTI AI CONCETTI PRINCIPALI DEI LINGUAGGI DI PROGRAMMAZIONE ED ALLA COSTRUZIONE DI TRADUTTORI E COMPILATORI. L'OBIETTIVO DEL CORSO È ESPORRE GLI STUDENTI ALLE TECNICHE DI SVILUPPO PER L' IMPLEMENTAZIONE DI UN LINGUAGGIO DI PROGRAMMAZIONE. QUESTO VIENE FATTO TRAMITE LA PRESENTAZIONE DELLE VARIE FASI DI UN COMPILATORE: L'ANALISI LESSICALE, L'ANALISI SINTATTICA, L'ANALISI SEMANTICA, LA GENERAZIONE DEL CODICE INTERMEDIA, LA GENERAZIONE DEL CODICE MACCHINA E L'OTTIMIZZAZIONE DEL CODICE. VERRANNO ILLUSTRATI I FORMALISMI NECESSARI PER LA SPECIFICA FORMALE DI UN LINGUAGGIO DI PROGRAMMAZIONE E MOSTRATI GLI ALGORITMI PRINCIPALI PER LA GENERAZIONE AUTOMATICA DI TRADUTTORI E COMPILATORI. VERRANNO INOLTRE STUDIATI TOOLS PER L'IMPLEMENTAZIONE DEI LINGUAGGI DI PROGRAMMAZIONE. COME CASO DI STUDIO, IL CORSO PREVEDE LO SVILUPPO DELLE PRIME FASI DI UN COMPILATORE PER IL LINGUAGGIO OBJECT-ORIENTED COOL. |
Prerequisiti | |
---|---|
SONO RACCOMANDATE CONOSCENZE DI BASE DI ALGORITMI, STRUTTURE DATI, ARCHITETTURE DEGLI ELABORATORI, LINGUAGGI DI PROGRAMMAZIONE DI ALTO LIVELLO, LINGUAGGIO ASSEMBLY. |
Contenuti | |
---|---|
STORIA, PARADIGMI E CARATTERISTICHE DEI LINGUAGGI DI PROGRAMMAZIONE ANALISI LESSICALE SPECIFICA LESSICALE DEL LINGUAGGIO COOL, JFLEX CONCETTI BASE DELLE GRAMMATICHE PARSING TOP-DOWN PARSING BOTTOM-UP SPECIFICA SINTATTICA DEL LINGUAGGIO COOL, JAVACUP TRADUZIONI GUIDATE DALLA SINTASSI RAPPRESENTAZIONI INTERMEDIE DICHIARAZIONI E TIPI DI VARIABILI ANALISI SEMANTICA E TYPE CHECKING SPECIFICA SEMANTICA DEL LINGUAGGIO COOL GESTIONE DELLA MEMORIA A RUNTIME GENERAZIONE CODICE INTERMEDIO GENERAZIONE CODICE MACCHINA (DI BASE) |
Metodi Didattici | |
---|---|
LEZIONI FRONTALI E STUDIO INDIVIDUALE. |
Verifica dell'apprendimento | |
---|---|
LA VALUTAZIONE DELLE CONOSCENZE E DELLE CAPACITÀ ACQUISITE DA PARTE DEGLI STUDENTI È BASATA SU DUE PROVE SCRITTE (UNA DURANTE IL CORSO ED UNA ALLA FINE), REALIZZAZIONE DI UN PROGETTO PER LO SVILUPPO DI UN COMPILATORE PER IL LINGUAGGIO COOL ED ESERCITAZIONI DA SVOLGERE A CASA ED UNA DISCUSSIONE ORALE SU TUTTO IL MATERIALE SVOLTO. NEL CASO NON SI SEGUA IL CORSO LE DUE PROVE SCRITTE SI RIDUCONO ALLA SINGOLA PROVA SCRITTA DI CIASCUN APPELLO. |
Testi | |
---|---|
IL CORSO UTILIZZA I TESTI V. AHO, R. SETHI, AND J. D. ULLMAN, COMPILERS: PRINCIPLES, TECHNIQUES, AND TOOLS, ADDISON-WESLEY, SECOND EDITION 2007. PRATT, T. W. AND M. V. ZELKOWITZ, PROGRAMMING LANGUAGES: DESIGN AND IMPLEMENTATION, 4RD ED., PRENTICE-HALL, 2000 INOLTRE VERRÀ UTILIZZATO MATERIALE ONLINE RIGUARDANTE APPROFONDIMENTI VARI, IL LINGUAGGIO DI PROGRAMMAZIONE COOL, LE LIBRERIE DI SUPPORTO ALL'IMPLEMENTAZIONE DI COOL ED I TOOLS DI SVILUPPO I CUI INDIRIZZI VERRANNO INDICATI DI VOLTA IN VOLTA. |
Altre Informazioni | |
---|---|
IL CORSO È SUPPORTATO DALLA PIATTAFORMA WEB DI DIPARTIMENTO DOVE SONO PUBBLICATE TUTTE LE ATTIVITÀ ED I MATERIALI DEL CORSO. |
BETA VERSION Fonte dati ESSE3 [Ultima Sincronizzazione: 2016-09-30]