Research & Projects

My research spans programming languages, runtime systems, concurrency, and AI-based software development. I focus on language and runtime designs that make programs safer and easier to write, and on practical tools and systems that put them to use.

Current Research & Development

Major Research Projects

Parallel Checker for C#

2015-2021 - HSR Rapperswil / OST

Static analysis tool detecting data races, deadlocks, and other concurrency issues in C# directly in the IDE. Features high precision and fast analysis times. Open-sourced under MIT license.

Composita Programming Language

2004-2014 - ETH Zürich & HSR Rapperswil

Component-oriented programming language featuring hierarchical composition, dynamic wiring, fine-grained concurrency, and communication-based interactions. Supported by a dedicated operating system kernel for large numbers of concurrent components with fast context switches.

GPU Parallelization in .NET

2014-2016 - HSR Rapperswil

Dataflow programming model and runtime system for .NET that maps high-level dataflow graphs to GPU code, in collaboration with QuantAlea. Aims to spare developers low-level GPU-specific programming.

Cloud Task Parallelization

2012-2016 - HSR Rapperswil

.NET runtime extension that ships ordinary shared-memory tasks, together with their reachable code and data, to high-performance computing clusters in the cloud, and merges their side effects back into local memory.

Persistent Oberon

2003-2007 - ETH Zürich

Extension of the Oberon language with integrated orthogonal persistence, avoiding explicit persistence mapping. Program state is kept in an automatically managed object store and survives system restarts.

Compiler & Runtime Systems Book

2018-2021 - HSR Rapperswil / OST

Textbook on compiler and runtime system design. Hands-on approach building both compiler and virtual machine from scratch, covering interpreters, JIT compilation, object-oriented runtime support, and garbage collection.

Industry Collaboration

In addition to academic research, I have conducted applied research projects with industry partners in areas such as concurrent programming, static analysis, and runtime systems.