Assigned Thesis Topics

If you are interested in writing a thesis (in German or English) in the scope of one of our research topics, just come talk to us. We are also open for your own ideas in the general area of software engineering / programming languages.

List of currently assigned thesis topics

Franciszek Piszcz (MSc)

Abstract-Interpretation-Based Language Server for Python

Most IDEs for Python development follow traditional code analysis approaches that are known to work well for statically-typed languages such as Java or C++. A lot of modern Python code is untyped, and these conservative tools tend to assign the “Any” type for variables that do not have explicit type annotations. However, programmers are usually able to deduce types (and often concrete values) by looking at surrounding code and jumping through function definitions and call sites.

Read more ...
David Voigt (BSc)

Resource Finalization for Effect Handlers

Handling resources, such as files or network sockets, in a language with control (such as exceptions) safely can become difficult. We need to make sure that all memory is eventually freed and all file handles and sockets are closed; even in the case of an exception.

Read more ...
Lukas Stetter (BSc)

Interaktive Lehrbücher

Viele der Lehrmaterialien welche wir in der Lehre verwenden bestehen aus nicht interaktiven Skripten und Foliensätzen. Aber viele Inhalte der Informatik eignen sich besonders gut für eine interaktive Präsentation. Durch eine interaktive Präsentation können auch sehr abstrakte Inhalte greifbar und verständlich gemacht werden. So wird zum Beispiel häufig auf Animationen und interaktive Graphiken zurückgegriffen, um die Ausführung von Algorithmen zu veranschaulichen.

Read more ...
Pavel Karasik (MSc)

Improving Error Messages with Algebraic Subtyping

Good type errors are an important tool to improve programmer productivity. Ideally, they can help to quickly localize and fix problems and help programmers to not only better understand the error, but also the underlying program.

Read more ...