# Experience

November 2013 – Present
Koblenz, Germany

#### Institute for Web Science and Technologies, University of Koblenz-Landau

Working on the integration of semantic web technologies into programming languages. Teaching responsibilities include:

• Algorithms and Datastructures
• Artificial Intelligence
August 2009 – October 2009
Mainz, Germany

#### IBM Deutschland Research & Development GmbH

I worked on setting up a virtual SOFS (Scale-out File Services) cluster. Also did some bugfixing and extensions to an management software.

# Selected Publications

All Publications »

### The Essence of Functional Programming on Semantic Data

Semantic data fuels many different applications, but is still lacking proper integration into programming languages. Untyped access is error-prone. Mapping approaches cannot fully capture the conceptualization of semantic data. In this paper, we present ${\lambda_{DL}}$, a typed ${\lambda}$-calculus with constructs for operating on semantic data. This is achieved by the integration of description logics into the ${\lambda}$-calculus for both typing and data access or querying. The language is centered around several key design principles, in particular: (1) the usage of semantic conceptualizations as types, (2) subtype inference for these types, and (3) type-checked query access to the data by both ensuring the satisfiability of queries as well as typing query results precisely. The paper motivates the use of a designated type system for semantic data and it provides the theoretic foundation for the integration of description logics as well as the core formal definition of ${\lambda_{DL}}$ including a proof of type safety.

### Semantic Web Application Development with LITEQ

The Semantic Web is intended as a web of machine readable data where every data source can be the data provider for different kinds of applications. However, due to a lack of support it is still cumbersome to work with RDF data in modern, object-oriented programming languages, in particular if the data source is only available through a SPARQL endpoint without further documentation or published schema information. In this setting, it is desirable to have an integrated tool-chain that helps to understand the data source during development and supports the developer in the creation of persistent data objects. To tackle these issues, weintroduce LITEQ, a paradigm for integrating RDF data sources intoprogramming languages and strongly typing the data. Additionally, we report on two use cases and show that compared to existing approaches LITEQ performs competitively according to the Halstead metric.

# Teaching

I am responsible for the Algorithms and Datastructure tutorials, an undergraduate course. The topics of the course include:

• Searching and Sorting
• Dynamic datastructures (Trees, Hashing)
• Graph algorithms (Shortest Path, Minimal Spanning Trees, Max Flow)

Furthermore, I’m also responsible for the tutorials of the graduate course Artificial Intelligence. Topics of the course include:

• Propositional and First-Order logic
• Programming in Prolog
• Planning and searching in state space
• Non-monotonic logic (Default Logic, ASP, Abstract Argumentation)
• Agent-based systems.

Besides courses, I’m also sometimes involved in seminars or research practicals such as seminars on graph algorithms or recently a research practical on AIs in Starcraft.