Compilers (2017/2018)

Course code
4S00041
Name of lecturer
Alessandra Di Pierro
Coordinator
Alessandra Di Pierro
Number of ECTS credits allocated
6
Academic sector
INF/01 - INFORMATICS
Language of instruction
Italian
Location
VERONA
Period
II sem. dal Mar 1, 2018 al Jun 15, 2018.

Lesson timetable

Go to lesson schedule

Learning outcomes

The students will learn the basic notions and techniques at the base of the theory and practice of compiler construction for programming languages. The course aims to provide the students with
- the necessary competences for designing and implementing simple compilers,
- the skills for a competent usage of tools for lexical and syntactical analysis,
- the knowledge of the theoretical notions at the base of the various compilation phases.

Syllabus

The list below gives a tentative programme that the lectures are intended to cover in a period of at least 44 hours.
The last two points of the list are supported by a series of lab sessions taking additional 12 hours.
The e-learning platform is used to make extra teaching material available to the students (lectures slides, exercises and their solutions, lab material etc.). This is intended to complement the lectures and the text books suggested in the related section.

Programme

* Introduction to the course and to the compilers technology
* Lexical analysis
* Syntactical analysis
* Abstract syntax
* Semantical analysis (type-checking)
* Intermediate code
* Intermediate code generation
* Usage of tools for parser generation
* Construction of a compiler for a simple functional language.

Reference books
Author Title Publisher Year ISBN Note
Aho, A.V. and Lam, M.S. and Sethi, R. and Ullman, J.D. Compilatori: Principi, tecniche e strumenti (Edizione 2) Pearson 2009 978-88-7192-559-2
Torben Egidius Mogensen Introduction to Compiler Design Springer-Verlag London 2011 978-0-85729-828-7

Assessment methods and criteria

The exam is a written test consisting of four problems with open answer. The objective of the test is to verify that students have effectively learnt the essential notions and techniques at the base of compiler construction and are able to put them in practice. Each question is evaluated in the range 0-7.5 so that the maximum score that can be achieved is 30/30. The `laude' is assigned to manuscripts that clearly show the student's mastery of the course topics.

STUDENT MODULE EVALUATION - 2017/2018