Gennaro COSTAGLIOLA | COMPILERS
Gennaro COSTAGLIOLA COMPILERS
cod. 0522500134
COMPILERS
0522500134 | |
COMPUTER SCIENCE | |
EQF7 | |
COMPUTER SCIENCE | |
2023/2024 |
YEAR OF COURSE 1 | |
YEAR OF DIDACTIC SYSTEM 2016 | |
AUTUMN SEMESTER |
SSD | CFU | HOURS | ACTIVITY | |
---|---|---|---|---|
INF/01 | 6 | 48 | LESSONS | |
INF/01 | 3 | 24 | LAB |
Objectives | |
---|---|
KNOWLEDGE AND UNDERSTANDING • THE MAIN CONCEPTS OF THE PROGRAMMING LANGUAGES • THE MAIN TECHNIQUES TO DEVELOP A COMPILER • THE PHASES OF A COMPILER • THE NEEDED FORMALISMS FOR FORMALLY SPECIFYING A PROGRAMMING LANGUAGE • THE MAIN ALGORITHMS FOR THE AUTOMATIC GENERATION OF TRANSLATORS AND COMPILERS APPLYING KNOWLEDGE AND UNDERSTANDING • THE USE OF TOOLS, AS FLEX AND JAVACUP/BISON, FOR THE IMPLEMENTATION OF A PROGRAMMING LANGUAGE • THE DEVELOPMENT OF A COMPILER |
Prerequisites | |
---|---|
THE COURSE REQUIRES THE BASIC KNOWLEDGE OF DATA STRUCTURES AND ALGORITHMS, ARCHITECTURE, HIGH-LEVEL LANGUAGE PROGRAMMING. |
Contents | |
---|---|
• HISTORY, PARADIGMS AND CHARACTERISTICS OF THE PROGRAMMING LANGUAGES (2 HOURS) • LEXICAL ANALYSIS (10 HOURS) • LEXICAL SPECIFICATION OF THE PROGRAMMING LANGUAGES WITH FLEX (4 HOURS) • BASIC CONCEPTS ON GRAMMARS (2 HOURS) • PARSING TOP-DOWN AND BOTTOM-UP (14 HOURS) • SYNTACTIC SPECIFICATION OF THE PROGRAMMING LANGUAGES WITH JAVACUP/BISON ( 4 HOURS) • SYNTAX-DRIVEN TRANSLATIONS (8 HOURS) • INTERMEDIATE REPRESENTATIONS (8 HOURS) • SEMANTIC ANALYSIS AND TYPE CHECKING (8 HOURS) • INTRODUCTION TO THE RUNTIME MANAGEMENT (2 HOURS) • CODE GENERATION (4 HOURS) |
Teaching Methods | |
---|---|
ABOUT TWO THIRDS OF THE LECTURES INCLUDE TOPICS PRESENTATION AND THE REMAINING LECTURES ARE DEDICATED TO EXERCISES IN CLASS. THE INDIVIDUAL STUDY WILL ALSO INCLUDE PROJECT DEVELOPMENT. SELF-ASSESSMENT TESTS WILL BE PROPOSED AND PUBLISHED ON THE COURSE WEBSITE. DISCUSSIONS WITH OTHER STUDENTS AND THE TEACHER WILL BE STIMULATED BOTH IN CLASS AND USING THE FORUM SUPPORTED BY THE COURSE WEBSITE. GIVEN THE CHARACTERISTICS OF THE DISCIPLINE, THE ATTENDANCE IS STRONGLY RECOMMENDED, ALTHOUGH NOT MANDATORY |
Verification of learning | |
---|---|
THE EVALUATION IS BASED ON A WRITTEN AND AN ORAL EXAM. THE WRITTEN PART OF THE EXAM WILL INCLUDE OPEN QUESTIONS AND EXERCISES TO EVALUATE THE FULFILLMENT OF THE OBJECTIVES OF THE COURSE. IN THE ORAL PART THE STUDENTS WILL DISCUSS ABOUT THEIR MANDATORY DEVELOPMENT OF A COMPILER. IN PARTICULAR, THE DISCUSSION WILL INCLUDE THE CODE MODIFICATION OF THE PRESENTED PROJECT, DIRECTLY ON A PC. THE FINAL GRADE IS GIVEN BY THE SUM OF THE PARTIAL GRADES OBTAINED. BOTH THE WRITTEN PART AND THE CODE MODIFICATION WITH THE PROJECT DESCRIPTION ARE WORTH, EACH, 16 POINTS. PASSING THE WRITTEN EXAM IN THE JANUARY-FEBRUARY APPOINTMENTS WILL BE VALID UNTIL THE BEGINNING OF THE SECOND SEMESTER, THE MARCH APPOINTMENT UNTIL THE ND OF THE SAME MONTH, THE JUNE-JULY APPOINTMENT UNTIL THE JULY APPOINTMENT, THE SEPTEMBER APPOINTMENT UNTIL THE BEGINNING OF THE FIRST SEMESTER COURSES, THE NOVEMBER APPOINTMENT UNTIL THE SAME MONTH. |
Texts | |
---|---|
V. AHO, R. SETHI, AND J. D. ULLMAN, COMPILERS: PRINCIPLES, TECHNIQUES, AND TOOLS, ADDISON-WESLEY, SECOND EDITION 2007 TEACHER'S NOTES AND OTHER ELECTRONIC MATERIAL: COURSE WEBSITE. TO BE CONSULTED: PRATT, T. W. AND M. V. ZELKOWITZ, PROGRAMMING LANGUAGES: DESIGN AND IMPLEMENTATION, 4RD ED., PRENTICE-HALL, 2000 |
More Information | |
---|---|
THE COURSE BULLETIN BOARD FOR NEWS AND OTHER INFORMATION AND THE ACTIVITY DIARY ARE PUBLISHED ON THE COURSE WEBSITE. THE STUDENTS ARE EXPECTED TO PASS AT LEAST TWO HOURS OF INDIVIDUAL STUDY FOR EACH HOUR IN CLASS. |
BETA VERSION Data source ESSE3 [Ultima Sincronizzazione: 2024-11-05]