I am interested in the application of software engineering techniques, and programming language theory in particular, to a range of modelling applications.
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.
I have explored static checking in the form of types, units, widths, ownership and bindings times. In terms of run-time behaviour I have looked at the automatic generation of abstract machines, relative placement annotations for hardware components and heart model optimisations using both partial evaluation and staging transformations.
Currently I am exploring domain specific languages for tumour modelling, mainly at the cellular level, and model descriptions to enable coupled simulations to be run seamlessly. My interests span to notions of interoperability and extensibility of scientific modelling languages in order to promote resuse.
The Case for Using Markup for Biomechanical Modelling
David Johnson and Steve McKeever
In Proceedings of the XXIII Congress of the International Society of Biomechanics. ISB. July, 2011.
Markup Languages for In Silico Oncology
David Johnson‚ Jonathan Cooper and Steve McKeever
In Georgios Stamatakos and Dimitra Dionysiou, editors, Proceedings of the 4th International Advanced Research Workshop on In Silico Oncology and Cancer Investigation (4th IARWISOCI) – The ContraCancrum Workshop. Pages 108–110. September, 2010.
Checking Concurrent Contracts with Aspects
Eric Kerfoot and Steve McKeever
In Proceedings of the 25th Annual Symposium On Applied Computing. March, 2010.