With this seminar you will learn the core techniques of scientific work. There are no frontal lessons: you will have to write a term paper that summarizes your knowledge of an assigned topic after reading a selection of scientific papers. Each participant is also required to give a talk about the topic chosen. Several topics are available, proposals from students can also be evaluated.
Modern programming languages like Java offer the programmer many advanced concepts: automatic memory management, dynamic class loading and linking, powerful type systems, and efficient just-in-time compilation. Typically, such features are partly implemented by the language's compiler (checking whether a program is well-typed), partly by the runtime environment (collecting garbage, i.e., objects no longer reachable).
This course is complemented by a hands-on training: . Attending the hands-on training is not mandatory, although there may exist synergies between topics offered here and in the hands-on training. Implementation of Programming Languages