Modular Dynamic Semantics Specification and Compilation
Date: Thu, January 26, 2023
Room: Echo Arena
Note: This is a PhD Go/No-Go meeting
Programming Language design is still a rapidly evolving field. There are recent developments in type systems, parallel computing, memory management, etc. However, experimenting with new designs or designing small languages for specific purposes is costly because it requires building a new compiler which currently has few opportunities for reuse.
The aim of my PhD is to develop a methodology for specifying the dynamic semantics of programming languages using high-level abstractions in a modular and verifiable manner.
Together with Cas and Casper, in my first year I have worked on a new effect system which has better support for higher-order effects than existing effect systems to form the basis of my compiler research. After Casper and Cas worked out a suitable formulation of the effect system, I have used it to implement a very simple compiler for my first workshop paper at the EVCS.
In the next three years, I hope to expand this simple compiler into two larger compilers which share a common basis, show that it is possible to reason formally about compilers written this way, and finally investigate advanced program analysis techniques such as symbolic execution and abstract interpretation.
Jurgen Vinju | To parse or to marshall, that is the question
Next: Lucas | Crafting Incremental Parallel and Self-Tracking Embedded Build Systems