Title:

Compiler Construction

Code:VYPe
Ac.Year:2012/2013
Term:Winter
Curriculums:
ProgrammeBranchYearDuty
IT-MSC-2MBI-Elective
IT-MSC-2MBS-Elective
IT-MSC-2MGM-Elective
IT-MSC-2MIN-Elective
IT-MSC-2MIS-Compulsory-Elective - group F
IT-MSC-2MMI-Elective
IT-MSC-2MMM-Compulsory
IT-MSC-2MPV-Elective
IT-MSC-2MSK-Elective
IT-MSC-2EITE2ndElective
Language:English
Public info:http://www.fit.vutbr.cz/study/courses/VYPe/public/
Credits:5
Completion:examination (written)
Type of
instruction:
Hour/semLecturesSem. ExercisesLab. exercisesComp. exercisesOther
Hours:3900013
 ExaminationTestsExercisesLaboratoriesOther
Points:55150030
Guarantee:Meduna Alexander, prof. RNDr., CSc., DIFS
Lecturer:Křivka Zbyněk, Ing., Ph.D., DIFS
Meduna Alexander, prof. RNDr., CSc., DIFS
Instructor:Křivka Zbyněk, Ing., Ph.D., DIFS
Solár Peter, Ing., DIFS
Vrábel Lukáš, Ing., DIFS
Faculty:Faculty of Information Technology BUT
Department:Department of Information Systems FIT BUT
 
Learning objectives:
Thorough grasp of compilers, including modern parallel compiler construction. Deep familiarity with the theory behind the translation of programming languages.
Description:
This course discusses the construction of compilers in detail. This discussion concentrates on the following three topics: (I) Advanced topics of classical compilers: LR-table construction, general precedence analysis, general methods of syntax analysis, advanced methods of optimization. (II) Principles of parallel compilers: parallel compiler structure, fundamental methods of parallel syntax analysis, basic models of parallel translation. (III) Formal translation models and their properties: transducers, translation grammars, properties of syntax directed translation, formal language properties relevant to compilers, modern translation models.
Subject specific learning outcomes and competences:
Ability of an advanced compiler construction. Deep familiarity with the theory and practice of programming language translation.
Generic learning outcomes and competences:
General knowledge of formal models for translation and their applications.
Syllabus of lectures:
  1. Introduction.
  2. Deterministic bottom-up syntax analysis: LR tabel construction.
  3. Deterministic bottom-up syntax analysis: general precedence analysis.
  4. General syntax analysis: important backtrack parsing methods.
  5. Advanced optimization.
  6. Principles of parallel compilers.
  7. Parallel syntax analysis: principles.
  8. Deterministic methods of parallel top-down syntax analysis.
  9. Deterministic methods of parallel bottom-up syntax analysis.
  10. Parallel code generation.
  11. Modern formal tools for language specification: regulated and parallel models.
  12. Formal tools for language translation: transducers and translation grammars
  13. Expected future trends; summary; conclusion.
Syllabus - others, projects and individual work of students:
(1) Making an advanced compiler. (2) Preparation and presentation of a selected topic about compilers.
Fundamental literature:
  1. Cooper, K.D. : Engineering a Compiler, San Francisco, Morgan Kaufmann, 2004, 879 p., ISBN 155860698X 
Study literature:
  1. Češka, M., Ježek, K., Melichar, B., Richta, K.: Konstrukce překladačů, Praha, CZ, ČVUT, 1999, 636 p., ISBN 80-01-02028-2 (in Czech)
Controlled instruction:
A written exam, creation of a project.
Progress assessment:
A mid-term exam.