Navigation

13D111OPP - Selected Topics in Compiler Construction

Course specification
Course title Selected Topics in Compiler Construction
Acronym 13D111OPP
Study programme Electrical Engineering and Computing
Module Software Engineering
Type of study doctoral studies
Lecturer (for classes)
Lecturer/Associate (for practice)
    Lecturer/Associate (for OTC)
      ESPB 9.0 Status elective
      Condition Passed undergraduate exam: Compiler Construction 1
      The goal Introducing students to the concepts of advanced algorithms and techniques in the field of compiler construction. Introducing students to the use of advanced toolsets for compiler construction.
      The outcome Students should be able to: Demonstrate understanding, critical analysis and application of existing theories, models and techniques in the field of construction of compilers and interpreters. Learn new theories, models, techniques and technologies as they appear. Meets the applicative and research tasks in these areas.
      Contents
      Contents of lectures Advanced topics lexical and syntactic analysis: GLR, PEG and packrat parsers. Advanced semantic analysis, IR generatiion. Execution environment other topics: strategies allocating and freeing dynamic memory, specifics of virtual machines. Code generators based on a rewritable grammars. Translating object-oriented language constructs. Code Optimization methods . Advanced toolsets LLVM and others.
      Contents of exercises study research work, a practical project
      Literature
      1. Compilers/Principles, Techniques and Tools, 2ed, A. Aho, M. Lam, R. Sethi, J. Ullman, 2006.
      2. Optimizing Compilers for Modern Architectures: A Dependence-based Approach, R. Allen, K. Kennedy, Morgan Cauffman, 2001.
      3. Advanced Compiler Design & Implementation, S. Muchnick, Morgan Kaufmann, 2003.
      4. Selected professional and scientific papers.
      Number of hours per week during the semester/trimester/year
      Lectures Exercises OTC Study and Research Other classes
      6
      Methods of teaching Tutoring, individual project
      Knowledge score (maximum points 100)
      Pre obligations Points Final exam Points
      Activites during lectures 0 Test paper 0
      Practical lessons 0 Oral examination 50
      Projects
      Colloquia 0
      Seminars 50