FPF:UIINP28 Compilers - Course Information
UIINP28 Compilers
Faculty of Philosophy and Science in OpavaWinter 2019
- Extent and Intensity
- 2/2/0. 6 credit(s). Type of Completion: zk (examination).
- Teacher(s)
- RNDr. Šárka Vavrečková, Ph.D. (lecturer)
- Guaranteed by
- RNDr. Šárka Vavrečková, Ph.D.
Institute of Computer Science – Faculty of Philosophy and Science in Opava - Prerequisites (in Czech)
- TYP_STUDIA(B)&& UIINP08 Algorithms and Programming II && UIINP11 TLA I
- Course Enrolment Limitations
- The course is offered to students of any study field.
- Course objectives
- The course Compilers is about practical usage of theoretical informatics in programming with a view to the compilation of text strings including files. Knowledge of theoretical informatics (formal languages, finite and pushdown automata) and programming is required. Students create the own simple compiler (interpreter) of an arbitrary language, inclusive of mathematical expressions, as their project in this course.
- Learning outcomes
- Students will be able to:
- describe basic procedures of presentation of the lexical and syntactic structure of programming language using some types of formal grammars,
- analyze the programming of the lexical and syntactic parser according to these structures,
- identify and describe other phases of compiler programming. - Syllabus
- 1. Structure of compilers.
- 2. Lexical analysis. Methods and their implementation.
- 3. Syntactic analysis, parsing. LL(1), strong LL(k) and strong LR(k) grammars and their implementation.
- 4. Semantic analysis. Processing of variables. Intermediary code.
- 5. Syntax-controlled processing.
- 6. Attributive interpretation.
- 7. Programming of the advanced language constructions.
- Literature
- required literature
- VAVREČKOVÁ, Š. Programování překladačů. Opava: Slezská univerzita v Opavě, 2008. ISBN 978-80-7248-493-5. info
- recommended literature
- COOPER, Keith D. a Linda TORCZON. Engineering a compiler. 2nd ed. Boston: Elsevier/Morgan Kaufmann, 2012. ISBN 978-0-12-088478-0. info
- GYUNGHO LEE a Pen-Chung YEW (eds). Interaction between compilers and computer architectures. New York: Springer, 2011. ISBN 978-144-1948-960. info
- MOZGOVOY, Maxim. Algorithms, languages, automata, and compilers: a practical approach. Sudbury, Mass.: Jones and Bartlett Publishers, 2010. ISBN 978-0-7637-7627-5. info
- SAFONOV, V. O. Trustworthy compilers. Hoboken, N.J.: John Wiley, 2010. ISBN 978-047-0500-958. info
- GUNDERLOY, Mike. Z kodéra vývojářem: nástroje a techniky pro opravdové programátory. Brno: Computer Press, 2007. ISBN 978-80-251-1517-6. info
- MELICHAR, B. - ČEŠKA, M. - JEŽEK, K. - RICHTA, K. Konstrukce překladačů I, II. Praha: ČVUT, 1999. info
- Teaching methods
- Interactive lecture
Lecture supplemented with a discussion - Assessment methods
- Credit:
- Compulsory attendance at seminars min. 75%.
- Two tests, min. 50% points from each.
- Programming lexical analysis of simple compiler.
Test:
- Written, a list of questions is on the subject's web.
- Programming your own simple interpreter in the selected programming language. - Language of instruction
- Czech
- Further Comments
- The course can also be completed outside the examination period.
- Enrolment Statistics (Winter 2019, recent)
- Permalink: https://is.slu.cz/course/fpf/winter2019/UIINP28