Compiler Technologies and Tools

formula on Compiler Technology

Compilers are programs which translate. Traditionally this translation is from human readable description to a description that the computer can directly excecute. Nowadays, this translation applies to a broader context, for example a web browser takes a description of how a website should look, and translates this to the actual rendering on a screen. As a result, techniques and tools applied by compilers are often (though invisible to the user) at the core of many programs. We explore such techniques, develop tools to support translation, and put it all into practice by developing compilers and supporting libraries and tools.

Scheme on the representative structure of compilers
Schematic representative structure of compilers

Within the grand scheme of compiler technologies and tools, we work on a several different (but inter-connected) research questions:

Jurriaan Hage 
  • Program Analysis
  • Compiler Construction


Wouter Swierstra 
  • Dependently Typed Programming (Agda, Coq)
  • Version Control Systems


Atze Dijkstra 
  • UHC
  • Compiler Construction
  • (Advanced) Functional Programming