Edinburgh Research Explorer

Andrew Gordon

Chair in Computer Security

Research Interests

My research is on programming languages and their semantics and logics, with application to security and privacy, machine learning, concurrency, and databases. I've published and lectured on: input/output in pure functional programming; hardware description languages; mobile computation; security protocols; web services security; distributed authorization; configuration management; and database programming languages.


1992, PhD, University of Cambridge.



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.

Before joining Microsoft in 1997, I was a Royal Society University Research Fellow at the University of CambridgeComputer Laboratory.

Between April 2007 and April 2010, I was a Visiting Professor in the School of Computing Science at the University of Newcastle upon Tyne.

Research outputs

  1. End-User Probabilistic Programming

    Research output: Chapter in Book/Report/Conference proceedingForeword/postscript

  2. Calculation View: multiple-representation editing in spreadsheets

    Research output: Chapter in Book/Report/Conference proceedingConference contribution

View all (66) »

ID: 14681