I’m a researcher and lecturer at the University of Kent, England, and my interests span all aspects of programming. My work involves understanding and rethinking software development infrastructure in all its forms – from tool and language designs, through language runtimes, right down to operating systems and instruction set architectures. I enjoy teaching, speaking and writing, all to a variety of audiences.
I also code lots, in many different languages! Recent research projects have included run-time type checking in C and C++, cross-language programming without FFIs, making program instrumentation easy, and the semantics of linking native code.