Alan Mycroft


Alan Mycroft is Professor of Computing in the Computer Laboratory of Cambridge University; he is also a Fellow at Robinson College and a co-founder and Trustee of the Raspberry Pi Foundation. A mini-CV is here (also Wikipedia's view).

Stop press: Raoul-Gabriel Urma, Mario Fusco and I are writing a book Java 8: Lambdas in Action.

Recent (summer 2012) opinionated talks on Computing at School, Raspberry Pi and Computational Thinking are based on the more measured slides here.

At the Computer Laboratory he is part of the Cambridge Programming Research Group which is now incorporated into the Programming, Logic and Semantics Group. His research interests span an arc from semantic models of programming languages to actually building optimising compilers. A core interest is that of static analysis of programs to extract properties of their run-time behaviour. Such properties can be used to enable optimisations or to facilitate ``compile-time debugging''. His PhD created the subject of ``strictness analysis'' when he argued that apparent run-time inefficiencies in modern high-level languages can often be removed by program analysis and optimisation phases. Other work has encompassed type-based decompilation and also language and compilation issues for ``Silicon Compilers'', i.e.\ compiling specifications directly to hardware. In 2005/06 he held a ``Visiting Faculty'' position with Intel Research Cambridge involving developing languages and techniques for compiling to `multi-core' processors; this research illuminates the benefits of type-like systems of program analysis at enabling programmers to express and manage their implicit treaty with a compiler (``optimise as much as you can, but don't step over the line'').

He welcomes applications from potential PhD students in the above (or cognate) areas -- potential PhD applicants are encouraged to send a draft research proposal of their interests.

Here a list of Mycroft's research interests and a list of Mycroft's research papers.

Mycroft is a founder and board member of EAPLS (European Association for Programming Languages and Systems) -- see the web page to become a member.

Current research projects [this section is a couple of years out of data]

Recently completed research projects are:

Here are items relevant to Cambridge University Teaching.

Here are some neat programming tricks including MIT's HAKMEM re-coded in C.


Alan Mycroft / E-mail am@cl.cam.ac.uk