Speaker Dr. Michael Petter
Location MI HS2 (IN 00.04.011)
Date Probably Wednesdays 12:20 to 13:50
Module CIT3230000 (formerly IN2113)
Tutorial Tuesday and Wednesday


We present selected topics that focus on current issues in the design or implementation of programming languages from point of view of compiler construction. We consider these topics as providers for building blocks for programming languages, thus this lecture is not intended as an introduction to programming these features, instead on how to adapt compilers and runtime systems in order to support these features.

  • Memory Model
    • Relaxed Memory Models
    • Wait-Free Algorithms
    • Lock-Free Algorithms
    • Locks and Monitors
  • Control Flow in Concurrent Systems
    • Transactional Memory
    • Coroutines and Continuations
  • Method Dispatching
    • Multimethods
    • Multiple Inheritance
  • Modularization
    • Mixins
    • Traits
    • Prototype based Programming
  • Metaprogramming
    • Aspect Oriented Programming
    • Homoiconic Metaprogramming

Recommended Requirements

  • IN0001 Introduction to Informatics 1
  • IN0003 Functional Programming and Verification

Tutorials & Lecture

see Moodle