Antoni van Leeuwenhoek Professor of Computer Science at TU Delft
September 28, 2015: I will give a tutorial Declare Your Language (And Run it Too) with the Spoofax Language Workbench at POPL 2016
September 17, 2015: Technical report: A constraint language for static semantic analysis based on scope graphs
September 7, 2015: Community survey paper Evaluating and comparing language workbenches. Existing results and benchmarks for the future published in Computer Languages, Systems & Structures journal.
September 5, 2015: Blog: Test your programming skills in WebLab programming competitions
August 23, 2015: SPLASH 2015 poster: Towards a domain-specific content management system for managing large conference websites about conf.researchr.org
August 10, 2015: Domain-specific language engineering paper on Hacker News
July 10, 2015: Technical report on language-independent type-dependent name resolution extending our work on scope graphs.
June 13, 2015: Declare Your Language a book (in progress) on language definition with the Spoofax Language Workbench.
May 19, 2015: I will give a hands-on tutorial on language definition with Spoofax at the Summer School on DSL Design and Implementation at EPFL in Lausanne on July 13.
August 22, 2014: I will serve as General Chair of SPLASH 2016
August 3, 2014: Paper on A language designer’s workbench. A one-stop-shop for implementation and verification of language designs accepted at Onward! 2014
The SLDE group has several open positions:
PhD student in automatic assessment and feeback for online assignments
If you would be interested in working with me, you can also get in touch directly by 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
Abstractions for web programming
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.