Programming Languages and Verification

The Programming Languages and Verification team is developing language engineering and verification techniques for the rapid development of domain-specific languages, specification languages and tools for editing, running and verifying programs in such languages. Case studies are provided by legal specification languages (e.g., eFLINT), protocol specification languages (Reowolf) and programmable networks (P4). The meta-languages developed by the team are used for conducting research into general-purpose programming languages. Of specific interest are functional programming, logic programming, theorem provers, model checking, definitional interpreters, and formal semantics.

Software

Publications

2026

2025

2024

2021

2020

L. Thomas van Binsbergen
L. Thomas van Binsbergen
Associate Professor

Thomas van Binsbergen is an Associate Professor in software engineering with a specialisation in the operational semantics of programming languages. Topics of interest include modular language specifications and implementations. Applications areas are automated legal reasoning in multi-domain systems and domain-specific languages for domains such as regulatory and legal, programmable networks, and software language engineering. I am tenured at the University of Amsterdam and situated in the Complex-Cyber Infrastructure research group of the Informatics Institute where I lead the Programming Languages and Verification team.

Tijs van der Storm
Tijs van der Storm
Professor

Tijs van der Storm performs research at the cross section between programming languages and software engineering, specializing in tools and techniques for the construction and evolution of domain-specific languages (DSLs). He is one of co-designers of the Rascal meta programming language and language workbench, which has been used for DSL design in digital forensics, financial product specification, and game economies. Van der Storm is chair of the Dutch association for software engineering research (VERSEN), treasurer of the European Association for Programming Languages and Systems (EAPLS), vice-president of AITO, and chair of the IFIP TC2 2.16 Working Group on Language Design.

Christopher Esterhuyse
Christopher Esterhuyse
Postdoc

Christopher is a post-doc researcher working on (languages for) specifying distributed systems, for eliciting, negotiating, testing, and verifying system properties.

Tommaso Pacciani
Tommaso Pacciani
PhD Candidate
Mike Schouten
Mike Schouten
PhD Candidate
Andrea Marino
Andrea Marino
PhD Candidate
Sofia Ali
Sofia Ali
External PhD Candidate
Tim Müller
Tim Müller
Scientific Programmer