Title: | Compiler Construction |
---|
Code: | VYPa |
---|
Ac.Year: | 2017/2018 |
---|
Sem: | Winter |
---|
Curriculums: | |
---|
Language of Instruction: | English |
---|
Public info: | http://www.fit.vutbr.cz/study/courses/VYPa/public/ |
---|
Credits: | 5 |
---|
Completion: | examination (written) |
---|
Type of instruction: | Hour/sem | Lectures | Seminar Exercises | Laboratory Exercises | Computer Exercises | Other |
---|
Hours: | 39 | 0 | 0 | 0 | 13 |
---|
| Exams | Tests | Exercises | Laboratories | Other |
---|
Points: | 55 | 15 | 0 | 0 | 30 |
---|
|
---|
Guarantor: | Meduna Alexander, prof. RNDr., CSc. (DIFS) |
---|
Lecturer: | Křivka Zbyněk, Ing., Ph.D. (DIFS) Meduna Alexander, prof. RNDr., CSc. (DIFS) |
Instructor: | Charvát Lucie, Ing. (DIFS) Křivka Zbyněk, Ing., Ph.D. (DIFS) Martiško Jakub, Ing. (DIFS) |
---|
Faculty: | Faculty of Information Technology BUT |
---|
Department: | Department of Information Systems FIT BUT |
---|
|
Learning objectives: |
---|
| | Thorough grasp of compiler construction, 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. |
Knowledge and skills required for the course: |
---|
| | Basic knowledge of discrete mathematics.
|
Subject specific learning outcomes and competencies: |
---|
| | Ability of an advanced compiler construction including parallel compiler. Deep familiarity with the theory and practice of programming language translation. |
Generic learning outcomes and competencies: |
---|
| | General knowledge of formal models for translation and their applications. |
Syllabus of lectures: |
---|
|
- Introduction: compiler structure.
- Deterministic bottom-up syntax analysis: LR table construction.
- Deterministic bottom-up syntax analysis: general precedence analysis.
- General syntax analysis: important backtrack parsing methods.
- Advanced optimization.
- Parallel compilers: parallel compiler structure.
- Parallel syntax analysis: principles.
- Deterministic methods of parallel top-down syntax analysis.
- Deterministic methods of parallel bottom-up syntax analysis.
- Parallel code generation.
- Modern formal tools for language specification: regulated and parallel models.
- Formal tools for language translation: transducers and translation grammars.
- 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: |
---|
|
- Cooper, K.D.: Engineering a Compiler, San Francisco, Morgan Kaufmann, 2004, 879 p., ISBN 155860698X
|
Study literature: |
---|
|
- Č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. |
|