LANGUAGES AND COMPILERS

Course objectives

General goals: Studenta will learn the inner workings of a compiler from both a theoretical and a practical standpoint. Specific goals: Knowledge and comprehension: In order to build a solid foundation on the inner workings of a compiler, selected topics on Formal Languages and Automata Theory will be presented in this course. Application of knowledge and comprehension: Students will learn how to use well-known tools for building compilers, e.g. Lex and YACC. Capabilities of critiquing and assessing: A non-mandatory part of the final exam will require the creation of a compiler for a simple high-level programming language. Capabilities of communication: The course is not concerned with explicit objectives on communication skills, except to instruct on the rigorous presentation of formal topics. Capability of learning The theoretical foundations and the widely used practical tools presented in this course will form a solid base for more advanced studies in this field.

Channel 1
GIANNI FRANCESCHINI Lecturers' profile

Program - Frequency - Exams

Course program
Lexical Analysis Syntax Analysis Semantic Analysis Intermediate code generation Machine Language generation Data-flow analysis Practical tools: lex and yacc
Prerequisites
No prerequisite.
Books
Lecture slides.
Frequency
Non-mandatory
Exam mode
Written test. Two tests during the semester.
Lesson mode
Normal lessons...
GIANNI FRANCESCHINI Lecturers' profile

Program - Frequency - Exams

Course program
Lexical Analysis Syntax Analysis Semantic Analysis Intermediate code generation Machine Language generation Data-flow analysis Practical tools: lex and yacc
Prerequisites
No prerequisite.
Books
Lecture slides.
Frequency
Non-mandatory
Exam mode
Written test. Two tests during the semester.
Lesson mode
Normal lessons...
  • Lesson code1041761
  • Academic year2025/2026
  • CourseComputer Science
  • CurriculumTecnologico
  • Year3rd year
  • Semester2nd semester
  • SSDINF/01
  • CFU6