Compiler Construction

Semestr: Summer

Range: 2+2s

Completion:

Credits: 4

Programme type: Undefined

Study form: Fulltime

Course language:

Summary:

This course follows lectures on Programming Languages and Compilers and Languages and Translations. It contains definition and application of attribute grammars, which is a basic formalism for description of attributed translations. The next topics are special cases of compiler construction, incremental and parallel parsing, generating and optimisation of target code.

Keywords:

Course syllabus:

1. Introduction, overview of entrances knowledge.
2. Attributed translation, basic notions.
3. Attributed translation, grammars.
4. Evaluation of attributes.
5. One-pass attributed translations.
6. Translation of complex language structures.
7. Classical methods of target program generation.
8. Target program generation for processors with the pipelining architecture
9. Target program optimization
10. Parallel LL parsing
11. Parallel LR parsing
12. Incremental LL parsing
13. Incremental LR parsing
14. Special applications (communication protocols, stringology, bioinformatics)

Seminar syllabus:

1. Parsers for LL grammars
2. Parsers for strong LR grammars
3. Attribute grammars - simple constructions
4. Attribute grammars - complex constructions
5. Attribute evaluations
6. Attribute evaluations directed by LL parsing
7. Attribute evaluations directed by LR parsing
8. Projects inspection
9. Translation of complex language structures
10. Target program generation
11. Parallel LL parsing
12. Parallel LR parsing
13. Incremental LL parsing
14. Incremental LR parsing

Literature:

1. Aho, A.V., Sethi, R., Ullman, J.D.: Compilers - Principles, Techniques and Tools. Addison-Wesley, Reading, Mass., 1986.

Examiners:

Lecturers:

Instructors: