I have been Lecturer in Computer Science at Magdalen College since 2011,
and I am an Emeritus Fellow of Worcester College. I was one of the
founders of undergraduate teaching in the computing sciences at Oxford
— having been elected in 1983 to be the Fellow and Tutor in Computation
at Worcester College, and a University Lecturer.
Between 1978 and 1983 I held research fellowships at Wolfson College and
in the Programming Research Group at Oxford. Before that I was Chief
Research Officer in the Department of Computing Science at Essex
University. I had earlier been at Bolt Beranek and Newman in Cambridge
Massachussetts working on the software for the second generation
Arpanet: this later became the Internet.
I have at various times been visiting Professor at the University of
Washington, Queensland University, East China Normal University, and the
Chinese Academy of Sciences.
Functional and Object-Oriented Programming. Discrete Mathematics and Logic. Models of Computation. Digital Systems. Concurrent Programming. Principles of Programming Languages. Compilers.
Eclectic CSP – a higher order, concurrent programming language. (with Quentin Miller)
Technical report, Oxford University Computing Laboratory, October 1998.
A service creation environment based on formal methods. (with Brian Philips, Neil Mason, Quentin Miller)
In Proceedings of the XVIIth World Telecommunications Congress and International Switching Symposium, 2000.
Communicating Scala Objects. Proceedings of the 2008 Communicating Process Architectures Conference.
User Interfaces for Generic Proof Assistants: Part I – Interpreting
Gestures. (with Richard Bornat). Proceedings of the Workshop on User
Interfaces for Theorem Provers, 1996.
User Interfaces for Generic Proof Assistants: Part II – Displaying
Proofs. (with Richard Bornat).. Proceedings of the Workshop on User
Interfaces for Theorem Provers, 1998.
Animating formal proof at the surface: the Jape proof calculator.
(with Richard Bornat) Computer Journal, 42(3), 1999.
Modeless structure editing (with Oege de Moor).
Proceedings of the Oxford-Microsoft symposium in Celebration of the
work of Tony Hoare, September 1999. Eds. AW Roscoe and JCP Woodcock.