About

I am a Principal Researcher at Microsoft Research, Cambridge, where I manage Programming Principles and Tools.

As a part-time position, I also hold the Chair in Computer Security and am a member of the Laboratory for Foundations of Computer Science and the Security and Privacy group in the School of Informatics in the University of Edinburgh.  I convene the University of Edinburgh Microsoft Research Joint Initiative in Informatics. I participate in the Data Science PhD programme.

My current research is on probabilistic programming for machine learning.

Projects

Infer.NET Fun

Established: April 2, 2012

"I think it's extraordinarily important that we in computer science keep fun in computing." Alan J. Perlis - ACM Turing Award Winner 1966. Infer.NET Fun turns the simple succinct syntax of F# into an executable modeling language for Bayesian machine…

F7: Refinement Types for F#

Established: May 29, 2008

F7 is an enhanced typechecker for the F# programming language, a dialect of ML. F7 pioneers the static checking of security properties expressed with refinement types. Although the original motivation was to check security properties, F7 is not security-specific and…

Samoa: Formal Tools for Securing Web Services

Established: May 16, 2003

An XML web service is, to a first approximation, a wide-area RPC service in which requests and responses are encoded in XML as SOAP envelopes, and transported over HTTP. Applications exist on the internet (for programmatic access to search engines…

Publications

2014

2013

2011

2010

2009

2008

2007

2005

2004

2003

2002

2000

1999

1998

1997

1996

1994

Projects