Alan Mycroft is Professor of Computing in the
Department of Computer Science and Technology (previously the "Computer Laboratory")
of Cambridge University;
he is also a Fellow at
and a co-founder of the
Raspberry Pi Foundation
for which he was also a Trustee 2008-2015.
A mini-CV is here (also Wikipedia's view).
Java 8 in Action:
Lambdas, streams, and functional-style programming
(Raoul-Gabriel Urma, Mario Fusco and Alan Mycroft).
The second edition was renamed Modern Java in Action and a third edition is in preparation.
Some opinionated talks on Computing at School,
Raspberry Pi and Computational Thinking are based on
the more measured slides here.
There is also a mini two-lecture-style Course on Algorithms to excite Year 12&13 (age 16-18) students about university-level Computer Science.
At the Department of Computer Science and Technology he is part of the
Programming, Logic and Semantics Group.
His research interests span an arc from semantic
models of programming languages to actually building optimising
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, started at
AT&T Laboratories Cambridge in 1999/2001,
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 early development of languages
and techniques for compiling to multi-core processors; this
research predated Rust's notion of borrowing and
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'').
Mycroft has also held visiting professor (or similar) positions at LIX at École polytechnique (Paris), IMDEA Software Institute (Madrid) and Department of Computer Science and Engineering at IIT Bombay (Mumbai)
Mycroft is a founder (and previously a board member) of EAPLS (European Association for Programming Languages and Systems) -- see the web page to become a member.
Mycroft is now too close to retirement to accept PhD or Masters students.
Here is a list of Mycroft's research papers.
Here are items relevant to Cambridge University Teaching.
Finally, here are some neat programming tricks including MIT's HAKMEM re-coded in C.