Dominic Orchard

Senior Lecturer in Computing
Telephone
+44 (0)1227 762349
 Dominic Orchard

About

Dominic's research primarily focusses on the theory and practice of programming languages, particular type systems, semantics, analysis, and verification. I also work closely with climate scientists, applying computer science advancements to support their work.

Dominic is also a co-director at the Institute of Computing for Climate Science, University of Cambridge, working their part-time. 

Research interests

I belong to the following research groups:

I am also a Fellow of the Software Sustainability Institute.

My research primarily focusses on the theory and practice of programming languages, particular type systems, semantics, analysis, and verification. 

I have served/am serving on the following Programme Committees: POPL 2023, Haskell 2022, PADL 2021 (co-chair), TyDe 2021 (co-chair), ICFP 2020 ERC, PLACES 2019, LOLA 2019, PPDP 2019, POPL 2019, IFL 2018, TyDe 2018, BEAT 2019, ICE 2018. I am co-chairing PLACES 2019.    

Main projects

  • Granule - Advanced type systems for verification of data treated as a resource.
  • PLAS4Sci - Laboratory for Programming Languages and System for Science.
  • CamFort - Lightweight verification of scientific computing models

Broadly I am interested in the intersection between logicsemantics, and types.

I have co-authored several papers introducing and developing the notion of coeffectful program behaviour (ICFP 2016ICFP 2014ICALP 2013). Coeffects are program behaviours which "consume" the execution context, e.g., variables, hardware resources, access policies, library versions, implicit parameters. Coeffect analyses and type theories capture a program's requirements on the execution environment. For example, a type theory corresponding to Bounded Linear Logic is a coeffect system which allows fine-grained control over variable usage.

I am also interested in applying results from programming language research to computational science, in particular to climate science. To this end, I lead the Laboratory for Programming Languages and Systems for Science at Kent and I work part-time at the University of Cambridge as Co-director of the Institute of Computing for Climate Science.

Teaching

In the academic year 2022/23, Dominic is teaching

 - COMP5450 Functional Programming
 - COMP6610 Theory and Practice of Concurrency

Dominic also supervises various Computing projects, so please get in touch if you would like to discuss an idea. Details of Dominic's past teaching can be found here.

Professional

Fellow of the Software Sustainability Institute.

Co-director of the Institute of Computing for Climate Science

Last updated