The unifying theme of my research is to explore semantics-based methods for developing languages, systems and tools. I have used such methods for the design and implementation of:
- provably-correct compiler generators
- hardware development tools based on imperative and declarative languages
- biological modelling languages to enable simulations at both the cell and atomistic levels.