Matthew Parkinson


This page is no longer maintained As of March 31st 2010, I have left the University and now work for Microsoft Research in Cambridge. My new homepage can be found at:

I was previously a Royal Academy of Engineering and EPSRC Research Fellow in the Computer Lab. I previously worked at Middlesex University with Professor Richard Bornat on Separation logic and concurrency. Before that I was a Ph.D. student in the Theory and Semantics group supervised by Dr Gavin Bierman and Professor Andrew Pitts. In October 2005 I successfully defended my Thesis on "Local Reasoning in Java". My thesis extended separation logic to a Java like setting, and was a runner-up in the BCS distinguished dissertation competition.

I previously organised the Theory Mini-courses. These are now organised by Sam Staton

We have released jStar.


Separation Logic for Java

Concurrency Verification



Ph.D. Students and Postdocs



I am primary supervisor to I am second supervisor to I was a joint supervisor to



I am the lecturer for Foundations of Functional Programming for 2008 and 2009.


I have supervised the following courses for Churchill College.
In Part IB: Logic and Proof, Semantics, Foundations of Functional Programming and Prolog.
In Part II: Types, Specification and Verification I and Topics in Concurrency.

Contact Details

EMail: Matthew.Parkinson at
Address: University of Cambridge
Computer Laboratory
William Gates Building
JJ Thomson Avenue
Cambridge CB3 0FD, UK


I would like to thank Gareth Stoyle for letting me steal, and modify, his CSS.

Some random links: one to my friend Ewan Mellor's webpage to boost his page rank. He did his final year project on Iota with Gavin Bierman, and also has some great lisp for Sawfish. And a second to Chris Morgan's website as he also wants more pagerank! Finally, a link to alpha-plus where Lisa works.

Here are some companies I have worked for: