2016
 22^{nd} November 2016  Ligweight Verification for Computational
Science Models, CDT on Next Generation of Computational Modelling, University of Southampton, UK [slides]
 9^{th} November 2016  Coeffects and Graded Linear Logic, Meeting on Linear Logic, ENS Lyon, France [slides available on request]
 21^{st} September 2016  Combining Effects and Coeffects via
Grading, ICFP 2016, Nara, Japan [slides]
 13^{th} September 2016  Supporting Software Sustainbility
with Lightweight Specifications, Workshop on Sustainable Software for Science, Practice and Expereiences (WSSSPE4), Manchester, UK
[slides]
 29^{th} July 2016 
CamFort  A lightweight verification tool for Fortran,
Fortran Modernisation Workshop, University of Southampton, UK
 17^{th} June 2016 
Effects as Sessions, Sessions as Effects,
School of Computing, University of Sussex
[slides]
 26^{th} May 2016 
Introduction to the picalculus,
Logic and Semantics for Dummies Seminar, Computer Laboratory,
University of Cambridge
 29^{th} April 2016
 Effects as Sessions, Sessions as Effects,
University of Leicester, UK
 19^{th} April 2016
 "All models are wrong but some are useful"  An Introduction
to Some Program Verification, Evening Tech Talk, Cambridge Coding Academy,
Espresso Library, Cambridge, UK [slides]
 30^{th} March 2016 
From analysisdirected semantics to specificationsintypes
, Dagstuhl seminar on
Languagebased verification tools for functional programs
 12^{th} February 2016 
Effects as Sessions, Sessions as Effects,
Theory seminar, School of Computer Science, University of Birmingham
[slides]
 5^{th} February 2016 
Effects as Sessions, Sessions as Effects,
Logic and Semantics seminar, Computer Laboratory, University of Cambridge
[slides]
 21^{st}January 2016 
Effects as Sessions, Sessions as Effects,
POPL 2016, St. Petersburg, Florida
 14^{th} January 2016 
Effects as Sessions, Sessions as Effects,
Mobility Reading Group seminar, Department of Computing, Imperial College London
 8^{th} January 2016
 Effect systems revisited  controlflow algebra and semantics
, 60th birthday Festschrift for Hanne and Flemming Nielsen, Denmark, Copenhagen
[slides]
2015
 16^{th} September 2015 
Session types in (Cloud) Haskell (work in progress)  ABCD meeting, University of Glasgow
 23^{rd} July 2015 
Programming languages and programs understanding programs  Cambridge Coding Academy Summer School, University of Cambridge, UK
 7^{th} July 2015 
Introduction to 2nd Workshop on Programming Language
Evolution, PLE'2015, ECOOP'2015, Prague, Czech Republic
 3^{rd} June 2015 
Effects in a pi  using session types as an effect system,
Icelandic Centre of Excellence in Theoretical Computer Science, Reykjavik University, Iceland
[slides]
 2^{th} June 2015 
Evolving Fortran types with unitsofmeasure,
ICCS 2015, Reykjavik University, Iceland
[slides]
 21^{st} May 2015 
Sessions as effects; effects as sessions,
Departmental seminar, Department of Computer Science, University of Warwick
[slides]

20^{th} April 2015 
Verifying concurrent instruments,
ABCD meeting, Imperial College London

18^{th} April 2015 
Using session types as an effect system,
PLACES 2015 (colocated with ETAPS), London, UK [slides]

11^{th} April 2015 
Inferring complexity bounds from abstract
categorical models (of containers), DICE 2015 (colocated with ETAPS), Queen Mary, London [slides]

30^{th} March 2015 
Complexity bounds from abstract categorical
models of containers, MRG Group Seminar, Imperial College London
[slides]

18^{th} February 2015 
Effects in a pi, Scottish Programming Languages Seminar,
University of Strathcylde [slides]

9^{th} February 2015 
Effects in a pi, MRG seminar, Imperial College
2014

29^{th} October 2014 
Coeffects: contextual effects / the dual of effects 
Invited talk,
Meeting on Effects and Coeffects systems
and their use for resource control, Dundee
[slides]

27^{th} October 2014 
Constructuing analysisdirected semantics 
University of Strathclyde, Mathematically Structured Programming Group Seminar, Glasgow
[slides]

20^{th} October 2014 
Timing and verifying concurrent instruments
MRG Seminar, Department of Computing, Imperial College London
[slides]

6^{th} September 2014
Temporal semantics for a live coding language
FARM 2014 (Functional art, music, and modelling) workshop, Gothenburg, Sweden
[slides]

4^{th} September 2014 
Embedding effect systems in Haskell, Haskell Symposium 2014, Gothenburg, Sweden [video]
[slides]

28^{th} July 2014 
Evolving Fortran types with inferred unitsofmeasure,
Workshop on Programming Language Evolution, ECOOP, 2014, Uppsala, Sweden,
[slides]

17^{th} June 2014 
Dualising effect systems to understand resources and context dependence,
Mobility Reading Group, Department of Computing, Imperial College London, UK
[slides]

12^{th} June 2014 
A computational science agenda for programming language research,
International Conference of Computational Science 2014, Cairns, Australia
[slides]

2^{nd} June 2014 
A computational science agenda for programming language research,
Digital Technology Group, Computer Laboratory, University of Cambridge

26^{th} March 2014

Separating concerns for better reproducibility (lightning
talk), Software Sustainibility Institute, Collaborations Workshop 2014,
Oxford, UK

12^{th} March 2014 
Fun with Indexed Monads, Fun in the Afternoon, hosted
at Facebook, London [Slides and code]
2013
 12^{th} November 2013 
Upgrading Fortran source code using automatic refactoring
and lightweight verification extensions,
Cambridge Centre for Climate Science, Department of Geography,
University of Cambridge
 27^{th} October 2013 
Upgrading Fortran soure code using automatic refactoring,
Workshop on Refactoring Tools (WRT'13)
at SPLASH 2013, Indianapolis, USA
[slides]
 21^{st} October 2013 
Upgrading Fortran soure code using automatic refactoring,
DTG Seminar, Computer Laboratory, University of Cambridge, UK
 25^{th} September 2013 
Automatic SIMD vectorization for Haskell
ICFP (International Conference on Functional Programming) 2013, Boston, MA, USA
[slides]
 17^{th} September 2013 
Automatic SIMD vectorization for Haskell
CPRG Seminar, Computer Laboratory, Cambridge, UK
[slides]
2012
 13^{th} November 2012 
Programs in context  Intelligent and Adaptive Systems Research Group, Department of Computer Science, University of Warwick [slides]
 5^{th} November 2012 
Programs in context  Digital Technology Group Seminar, Computer Laboratory, Cambridge
 30^{st} August 2012  A Notation for Comonads 
Implementation and Application of Functional Languages 2012 (IFL'12), Oxford,
UK [slides] [video].
 22^{nd} June 2012  A Notation for Comonads, Context, and Intensional Programming 
Algebra of Programming informal seminar, Department of Computer Science, Oxford, UK
 13^{th} June 2012  Mathematical Structures for Data Types with Restricted Parametericity, Trends in Functional Programming 2012, St. Andrews, Scotland [slides]
 8^{th} June 2012  Mathematical Structures for Data Types with Restricted Parametericity, CPRG Seminar, Computer Laboratory, Cambridge
 27^{th} April 2012  The Unreasonable Effectivness of (High School) Mathematics, 5^{th} Annual Jesus College Graduate Conference, Cambridge [slides] [video]
 23^{rd} Februrary 2012  Coeffect systems: capturing contextdependence,
University of Strathclyde, Mathematically Structured Programming Group Seminar, Glasgow (slides on request)
2011
 27^{th} October 2011  The Four Rs of Programming Language Design, Onward! Essay Presentation, SPLASH 2011, Portland, Oregon, USA.
 7^{th} October 2011  Coeffect Systems and Typing  (with Tomas Petricek), CPRG Seminar, Computer Laboratory, Cambridge [slides]
 7^{th} September 2011  Efficient and Correct Stencil Computations via Pattern Matching and Type Checking  IFIP Working Conference on DSLs, DSL 2011, Bordeaux, France [slides]
 2^{nd} September 2011  Efficient and Correct Stencil Computations via Pattern Matching and Type Checking  CPRG Seminar, Computer Laboratory, Cambridge
 2^{nd} June 2011  Programming with Comonads and Codo Notation  Tallinn University of Technology, Institute of Cybernetics, Estonia [slides]
 20^{th} May 2011  When Monads and Comonads Overlap  CPRG Seminar, Computer Laboratory, Cambridge
 13^{th} May 2011  Programming with Comonads and Codo Notation  CPRG Seminar, Computer Laboratory, Cambridge
2010
 26^{th} November 2010  repeat lecture  Mathematically Structuring
Programming Languages
 Research
Students Lecture Course, Cambridge,
UK. [slides,
notes, and examples]
 20^{th} August 2010 
Rethinking Language Design for Parallelization, Intel Labs, Santa Clara, California, USA [slides]
 2^{nd} June 2010  Programming with monads combined
with comonads
 ICFP
PC Workshop 2010, Microsoft Research, Cambridge, UK
[slides]
 14^{th} May 2010  lecture  Mathematically Structuring
Programming Languages
 Research
Students Lecture Course, Cambridge,
UK. [slides,
notes, and examples]
 21^{st} April 2010  Haskell Type Constraints
Unleashed
 FLOPS
2010, Sendai, Japan (given as a video talk due to continued
airflight restrictions in the UK at the time) [slides] [video]
 17^{th} February 2010  Haskell Type Constraints Unleashed  Fun in the Afternoon, Standard Chartered Bank, London [slides]
 12^{th} February 2010  Haskell Type Constraints Unleashed  CPRG Seminar, Computer Laboratory, Cambridge
 19^{th} January 2010  Ypnos: Declarative, Parallel Structured Grid Programming, DAMP '10, Madrid, Spain [slides]
2009
 20^{th} November 2009  Ypnos: Declarative, Parallel Structured Grid Programming, CPRG Seminar, Computer Laboratory, Cambridge [slides]
 1^{st} May 2009  Programming Language Design, Jesus College Graduate Symposium '09 [slides]
 7^{th} April 2009  Lucian: Dataflow and Object Orientation  BCTCS '09, University of Warwick, UK [slides]
[abstract]
 13^{th} March 2009  Interoperation of Lucid's Dataflow paradigm and Objectorientation with a Coalgebraic Semantics  CPRG Seminar, Computer Laboratory, Cambridge