FI:PA037 Compiler Project - Course Information
PA037 Compiler Project
Faculty of InformaticsSpring 2007
- Extent and Intensity
- 0/2. 2 credit(s) (plus extra credits for completion). Type of Completion: z (credit).
- Teacher(s)
- prof. RNDr. Antonín Kučera, Ph.D. (lecturer)
- Guaranteed by
- prof. RNDr. Mojmír Křetínský, CSc.
Department of Computer Science – Faculty of Informatics
Contact Person: prof. RNDr. Antonín Kučera, Ph.D. - Timetable
- Thu 14:00–15:50 B411
- Prerequisites
- P008 Compilers
PA008 Compiler Construction - Course Enrolment Limitations
- The course is also offered to the students of the fields other than those the course is directly associated with.
- fields of study / plans the course is directly associated with
- Applied Informatics (programme FI, N-AP)
- Informatics (programme FI, M-IN)
- Informatics (programme FI, N-IN)
- Upper Secondary School Teacher Training in Informatics (programme FI, M-SS)
- Upper Secondary School Teacher Training in Informatics (programme FI, M-TV)
- Upper Secondary School Teacher Training in Informatics (programme FI, N-SS)
- Course objectives
- The aim of the seminar is to provide students with a deeper knowledge concerning the structure of programming languages and compilers. To pass this seminar, students have to implement a compiler of a simple programming language. It is possible to work in groups of 2-4 members; the complexity of the project should be proportional to this number.
- Syllabus
- The logical structure of a compiler. Formalisms used for specification of individual modules.
- The scanner. Regular expressions. Tokens and their precedence.
- The parser. Top-down and bottom-up analysis.
- The constrainer. Attribute grammars. Attribute flow. Attribute evaluation.
- The code generator, optimisations.
- A complete specification of a simple one-pass optimising compiler. Cooperation between modules.
- Symbol tables as attributes. Declarations, type checking, scope analysis.
- Functions. Stack frames. Passing of parameters. Conventions of C and Pascal.
- Input and Output. The relationship with operating system. Unix and C.
- I386 assembler, conventions of C.
- Language of instruction
- Czech
- Further Comments
- The course is taught annually.
- Enrolment Statistics (Spring 2007, recent)
- Permalink: https://is.muni.cz/course/fi/spring2007/PA037