Lecturing
- Visting lecturer, Autumn 2014, Type systems in programming, [Final year course], Computer Laboratory, University of Cambridge [organised and taught entire course]
- Research student lectures - Mathematically Structuring Programming Languages (part of "Current Research Topics" at the Cambridge Computer Laboratory) May 2010 and November 2010 (part of the CPRG lecture series ).
Projects
Please get in touch if you are interested in me supervising your project.
Previous undegraduate and Masters' projects supervised:
- Verifying concurrent musical programming for Sonic Pi (2014-15) (Imperial, 4th year)
- The Formatting Problem for code (2013-14) (Part III)
- Dimensions types in Fortran (2013-14) (Part III)
- Distributed Programming with Rebindable Resources (2013-14)
- Implementing the Codo Syntax for Comonads in GHC (2012-13)
- GPU accelerating the Ypnos programming language (2012-13)
- VisualLucid IDE - A visual approach to dataflow programming (2011-12)
- Accessing Standard ML Constructs From Java Across Language Domains (2011-12)
- Parallelisation of Java for Graphics Processors - Peter Calvert (2009-10)
- Reconsidering Lucid - a modern approach - Jonas Kaiser (2009-10)
Tutorials and supervisions
- Feb 2015: I am helping to teach the "Academic writing" course (CO520) for graduate students.
- 2008-2014:
Whilst at the University of Cambridge, I supervised the following courses:
- Logic and Proof (2013-14)
- Semantics (Michaelmas and Lent Term, 2009-2014)
- Concepts in Programming Languages (Easter term, 2010-2011)
- Optimising Compilers (Michaelmas term, 2008-2009, 2013-14)
- Extra explanatory notes for the constraint based analysis.
- I also contributed to the current supervision material.
- Comparative Architectures (Lent Term, 2009)