Full Professor of Computer Science at TU Delft | Chair Programming Languages Group | Antoni van Leeuwenhoek Professor
September 26, 2018: Paper Intrinsically Typed Definitional Interpreters for Imperative Languages with Casper Bach Poulsen, Arjen Rouvoet, Andrew Tolmach, and Robbert Krebbers accepted at POPL 2018
August 11, 2017: Paper “The Semantics of Name Resolution in Grace” with Vlad Vergu accepted at DLS 2017
August 4, 2017: Paper: “Deep Priority Conflicts in the Wild — A Pilot Study” with Eduardo Amorim and Michael Steindorfer accepted at SLE 2017
August 4, 2017: Paper “FlowSpec: Declarative Dataflow Analysis Specification” with Jeff Smits and Guido Wachsmuth accepted at SLE 2017
July 10, 2017: I will serve on the OOPSLA 2018 program committee; submission deadline is April 16, 2017; submit interesting papers!
April 12, 2017: Paper IceDust 2: Derived Bidirectional Relations and Calculation Strategy Composition with Daco Harkes accepted at ECOOP 2017
March 6, 2017: I will be on the Program Committee of ‹Programming› 2018; submit interesting papers!
I have an opening for a PhD student in software language engineering
Postdoc candidates: contact me if you are interested in submitting a proposal to the LEaDing Fellows program for Marie Curie postdoc positions; next deadline is December 31, 2017
I am looking for student programmers
If you would be interested in working with me, send me an email (but read this first).
I lead the Software Language Design and Engineering research program. Our mission is to enable software engineers to effectively design, implement, and apply domain-specific languages. We are doing research in three tracks:
Language engineering: investigate the automatic derivation of efficient, scalable, incremental compilers and usable IDEs from high-level, declarative language definitions
Semantics engineering: investigate the automatic verification of the consistency of language definitions in order to check properties such as type soundness and semantics preservation
Language design: investigate the systematic design of domain-specific software languages with an optimal tradeoff between expressivity, completeness, portability, coverage, and maintainability.
Integrated development environments
Transformation and analysis
Syntax definition and parsing
Programming with relations
Abstractions for web programming
Program Chair: OOPSLA 2019
PC member: OOPSLA 2018
Speaker: ECOOP 2017 Summer School
Chair: IFIP WG2.16 on Programming Language Design
MetaBorg provides generic technology for allowing a host language (collective) to incorporate and assimilate external domains (cultures) in order to strengthen itself. The ease of implementing embeddings makes resistance futile.