Projects
Solving Combinatorial and Probabilistic Problems in Natural Language. University of Antwerp
AmPERSand: Development and analysis of a Programming Education Runtime System with applications in programming education. KU Leuven
Programming is a skill that is becoming increasingly important in industry and various scientific domains, but many students struggle to acquire this skill. This has led to a global shortage of programmers. To address this, programming education is being increasingly introduced in secondary education. However, teachers have difficulty in guiding an entire class in learning to program because students constantly have questions about error ...
Implicit Type-Directed Code Generation KU Leuven
Free Generalized Monoids for Programming and Proving KU Leuven
Programmer productivity is key in today's software development: broader functionality must be provided on more projects, in less time and with fewer developers. Yet, productivity often suffers because programmers structure and reason about their programs in an ad-hoc manner.
This project aims to remedy the situation by applying concepts from category theory, an abstract branch of mathematics, to systematically structure programs. More ...
Algebraic Effect Handlers: Harnessing the fundamental power of effects KU Leuven
Today’s society runs on software and it has programming languages to thank for that, not only because they are the means by which software is created, but also because programming language research has enabled the exponential growth of software development that we have seen over the past decades. Unfortunately, it is becoming increasingly clearer that current software development practice cannot sustain the growth rate that society demands. ...
Integration in Knowledge Representation and Reasoning KU Leuven
In the field of Knowledge Representation and Reasoning, many different logics are developed to represent knowledge in. Furthermore, for several of those languages tools for automatic reasoning are developed. In order to successfully apply these methods to practical problems, it is important to keep an overview of the various language. In this project, we aim at developing the tools that facilitate the possibility to keep such an overview. We ...
A Category-Theoretic Perspective on Approximation Fixpoint Theory KU Leuven
Approximation Fixpoint Theory (AFT) was founded in the early 2000s as an abstract algebraic framework to study the semantics of non-monotonic logics, like default logic, autoepistemic logic, and logic programming. Many of the non-monotonic constructive processes that occur in several areas of computer science, together with their associated semantic structures, can be successfully studied using AFT, which greatly simplifies their ...
Bidirectional Program Calculation with Effects KU Leuven
Advanced multi-stage programming with computational effects KU Leuven
Developer productivity and software performance are two key properties of software development that are hard to achieve simultaneously. The former requires rich layers of abstraction and highly reusable, contextindependent code. In contrast, the latter aims at code without generic overhead or indirections that is highly specialized. General-purpose optimized compilation can automatically improve the performance of high-level programs, but is ...