Main Content


The research group Programming Languages and Tools regularly offers the following lectures:

  • Compulsory lectures (yearly)
    • Object-oriented programming
    • Declarative programming
  • Elective lectures (typically in a two-year cycle)
    • Compiler construction
    • Virtual machines
    • Advanced concepts of programming
    • Software design

We also regularly offer student projects, i.e., "Fortgeschrittenen Praktikum" (Bachelor) and "Project Work" (Master),  seminars and final projects for both Bachelor and Master students. The topics are usually related to the research interests of the group, in particular:

  • Trace-based debugging
  • Manipulation of Bytecode and Bytecode models
  • Refactoring detection
  • Energy efficiency of program execution
  • Didactics in Software Engineering Education

More details on the current teaching of the Programming Languages and Tools can be found in the course catalog.