Curriculum Vitae

This page is an abridged version of my CV; the full version is available on request.


I am a Reader in Software Development at the Department of Informatics at King's College London where I lead the Software Development Team and an EPSRC Fellow (2014–2019). I pride myself on undertaking practical research in programming languages and their associated tools, building software that then underpins the research presented in my papers. I have been PI on 9 grants, worth £2.01M, with a mix of industrial and government funding (details of all projects since 2012).

I'm an Editor of The Journal of Functional Programming. I was an Associate Editor in Chief of IEEE Software (2008-2012) and Editor-in-Chief of The Journal of Object Technology (2014-2016).

Awards: Best Software Science paper at ETAPS 2009. Best paper at ESEM 2012. Distinguished Artefact Award at OOPSLA 2013.

Invited speaker: Dynamic Languages Symposium 2008, Scala Symposium 2016.

Invited panellist: UML 2003, UML 2004, MODELS 2005, Code Generation 2007, Code Generation 2008, Code Generation 2009.

Programme chair: Model Transformations in Practice (MTiP) 2005, Model-based Analysis, Slicing and Transformation of Models (MAST) 2006, International Conference on Model Transformation 2010, ICOOOLPS 2014, Dynamic Languages Symposium 2014, Best Practices in Software Benchmarking 2016, Virtual Machines Summer School 2016, MoreVMs 2016, Programming Language Implementation Summer School 2016.

Steering committees: Dynamic Languages Symposium (2014-).

Organising committees: MODELS 2006, MODELS 2007, TOOLS 2007, TOOLS 2008.

Programme committees: Workshop in Software Model Engineering (WiSME) 2004, ACM SAC Model Transformations track 2006, Towers of Models 2007, Model-Driven Development Tool Implementers Forum (MDD-TIF) 2007, Dynamic Languages and Applications (DYLA) 2007, International Conference on Dynamic Languages (ESUG) 2007, International Workshop on Language Engineering (ATEM) 2007, Code Generation 2008, TOOLS 2008, International Conference on Model Transformation 2008, Software Engineering and Knowledge Engineering (Model-Based Software Engineering Track) 2008, International Conference on Software Language Engineering 2008, International workshop on UML and Formal Methods 2008, MODELS 2008, UML & AADL, Fundamental Aspects of DSL Interoperability, Code Generation 2009, ECOOP 2009, International Conference on Model Transformation 2009, TOOLS 2009, Open Component Ecosystems (IWOCE) 2009, MODELS 2009, International Workshop on Ontology-Driven Software Engineering 2009, Code Generation 2010, ECOOP 2010, TOOLS 2010, SSBSE 2010, MODELS 2010, ECOOP 2011, TOOLS 2011, ICMT 2011, SLE 2011, SSBSE 2011, DLS 2011, PLASTIC 2011, LDTA 2012, DLS 2012, MODELS 2012, ECOOP 2013, ICMT 2013, DLS 2013, Onward 2013, ISEC 2014, ASWEC 2014, ICMT 2014, DSLDI 2014, ICOOOLPS 2015, Reflect 2016, PPPJ 2016, DLS 2016, OOPSLA 2016, ManLang 2017.