Lehrstuhl Informatik II   
Sprachen und Beschreibungsstrukturen      
   Home Lehre Wintersemester 17/18 Vorlesungen Programming Languages login

Programming Languages

Dozent:Prof. Dr. Helmut Seidl, Dr. Michael Petter
Ort/Zeit:HS 2, Wednesdays 14:00-15:30 and Tutorial: Fridays 08:30-10:00 HS 2
Beschreibung:    We are discussing various advanced programming paradigms illustrated by a number of real programming languages such as e.g. Smalltalk, Java, C/C++ and others.



Memory Models for Concurrency

  1. Happened-before and Sequential Consistency
  2. MESI and TSO
  3. Wait-Free & Lock-Free Algorithms
  4. Monitors & Condition Variables and Deadlock Prevention
  5. Transactional Memory

Modularization Techniques

  1. Function Dispatching
  2. (Multiple)-Inheritance
  3. Mixins and Traits
  4. Prototype Based Programming
  5. Aspect Oriented Programming
  6. Metaprogramming


Mini-Topics for Talks to be announced in December

Teleteaching Recordings

from the 16/17 Winter Semester can be found here.

Tutorial Sessions

  1. Tutorial Sheet "Happened-Before" / Solution
  2. Tutorial Sheet "MESI and Dekker" / Solution
  3. Tutorial Sheet "Semaphore and Monitors" / Solution
  4. Tutorial Sheet "Memory Consistency, Locks: repetition" / Solution
  5. Tutorial Sheet "Deadlocks" / Solution
  6. Tutorial Sheet "Transactional Memory" / Solution
  7. Tutorial Sheet "Dispatching" / Solution
  8. Tutorial Sheet "Inheritance Part 1" / Solution
  9. Tutorial Sheet "Inheritance Part 2" / Solution
  10. Tutorial Sheet "Mixins and Traits" / Solution
  11. Tutorial Sheet "Prototype Based Programming" / Solution


Passing the exam of this course is worth 5 ECTS.

Hera are the exams from 2015 (sol) and 2016 (sol).

This information might not be up-to-date.

  1. Exam: There will be only one exam at the end of the semester
  2. Exam: you are allowed to bring all analog helpers, e.g. books, printed slides, personal notes, etc. ; we recommend one DIN A4 sheet of paper with notes on both sides
  3. Exam: in case you did not pass, you have the opportunity to take "Compiler Construction" or "Virtual Machines" next term or alternatively repeat the exam next winter

TUM - Lehrstuhl Informatik II (Sprachen und Beschreibungsstrukturen) Thanks: Tango and TinyMCE     Generationszeit: 10 ms