Interests: My research is in programming language theory, and I'm also interested in logic and category theory. I've recently been especially interested in two kinds of programming language:
Probabilistic programming languages: This is broadly to do with specifying and understanding statistical models using programming languages. I was recently awarded an ERC Consolidator grant in this area, and we recently won a Facebook research award too. Recent papers include LICS 2021, POPL 2021, and POPL 2019. Going back further, my paper in ESOP 2017 introduced the idea of using s-finite kernels as a simple compositional formalism allowing both sampling and observations. In LICS 2017 we introduced quasi-Borel spaces: a new setting for higher order probability theory; this is used, for instance, to validate some inference algorithms in POPL 2018. Our PPS 2017 abstract is about the relationship between exchangeability and program modules which I think is an exciting direction, and we stepped a bit further in ICALP 2018 and AHP 2021.
Quantum computing and programming languages: Mathieu Huot and I found a neat universal property for quantum theory (LICS 2019, QPL 2018) based on my theory of quantum programs (POPL 2015). Earlier, I've worked on contextuality and non-locality with Sander Uijlen (see our ICALP 2015 paper), and on quantum programming languages with Mathys Rennela (see our MFPS 2017/LMCS and 2015 papers and our QPL 2016 paper). My research in this area has been supported by my grant 'Quantum Computation as a Programming Language' (EP/N007387/1) and a current AFOSR grant FA9550-21-1-0038.