DS1OPP - Selected Topics in Compiler Construction

Course specification
Course title Selected Topics in Compiler Construction
Acronym DS1OPP
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 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
      1. Compilers/Principles, Techniques and Tools, 2ed, A. Aho, M. Lam, R. Sethi, J. Ullman, 2006. (Original title)
      2. Optimizing Compilers for Modern Architectures: A Dependence-based Approach, R. Allen, K. Kennedy, Morgan Cauffman, 2001. (Original title)
      3. Advanced Compiler Design & Implementation, S. Muchnick, Morgan Kaufmann, 2003. (Original title)
      4. Odabrani stručni i naučni radovi. (Original title)
      Number of hours per week during the semester/trimester/year
      Lectures Exercises OTC Study and Research Other classes
      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 50
      Colloquia 0
      Seminars 0