I still maintain some interest in biological modelling (see here for more info).
I attended SPLASH 2013 in Indianapolis, presenting at WRT'13 [PDF].
Andy Rice and I have had our paper Upgrading Fortran source code using automatic refactoring accepted to WRT'13 at SPLASH 2013. [PDF]
Attended ICFP 2013 and presented my paper Automatic SIMD Vectorization for Haskell (joint work with Petersen and Glew). (talk also given at the Computer Laboratory).
Ohad Kammar, Alan Mycroft, and I are organising a summer course on Dependently typed metaprogramming (in Agda), here at the Computer Laboratory, which will be given by Conor McBride of the University of Strathclyde. Details and sign up here.
I attended ICALP 2013 in Riga, Latvia.
Leaf Petersen, Neal Glew, and I have had our paper Automatic SIMD Vectorization for Haskell accepted to ICFP 2013. Pre-print version to appear soon (or e-mail me).
Submitted a paper to ICFP 2013 with Leaf Petersen and Neal Glew on SIMD vectorisation of GHC core.
Coeffects: unified static analysis of context-dependence (pdf), with Tomas Petricek and Alan Mycroft, accepted to ICALP 2013.
I am on the PC of IFL 2013, this year hosted at Radboud University, Nijmegen.
A Notation For Comonads (pdf), with Alan Mycroft, accepted for publication in the post-proceeedings of IFL 2012.
Upgrading Fortran source code using automatic refactoring
Automatic SIMD Vectorization for Haskell
Coeffects: Unified static analysis of context-dependence
A Notation for Comonads
- The four Rs of programming language design
- Efficient and Correct Stencil Computation via Pattern Matching and Static Typing
- Haskell Type Constraints Unleashed
- Ypnos : Declarative Parallel Structured Grid Programming
- muCell - Interdisciplinary Research in Modelling and Simulation of Cell Spatial Behaviour
- Integrating Lucid's Declarative Dataflow Paradigm into Object-Orientation
Dominic Orchard and Steve Matthews
Mathematics in Computer Science, 2(1), November 2008
Old drafts and notes (some may be resurrected someday)
The semantic marriage of monads and effects (extended abstract)
Dominic Orchard, Tomas Petricek, Alan Mycroft, 2013, [PDF] (unpublished)
Categorical Programming for Data Types with Restricted Parametericity
Should I use a Monad or a Comonad?
The Unreasonable Effectiveness of (Basic Secondary School) Mathematics
Dominic Orchard, Jesus College Annual Report 2012, (p.27-28) [PDF] (PDF version has corrupted figure on p.28)
- 12th November 2013 - Upgrading Fortran source code using automatic refactoring and lightweight verification extensions, Cambridge Centre for Climate Science, Department of Geography, University of Cambridge
- 27th October 2013 - Upgrading Fortran soure code using automatic refactoring, Workshop on Refactoring Tools (WRT'13) at SPLASH 2013, Indianapolis, USA [slides]
- 21st October 2013 - Upgrading Fortran soure code using automatic refactoring, DTG Seminar, Computer Laboratory, University of Cambridge, UK
- 25th September 2013 - Automatic SIMD vectorization for Haskell ICFP (International Conference on Functional Programming) 2013, Boston, MA, USA [slides]
- 17th September 2013 - Automatic SIMD vectorization for Haskell CPRG Seminar, Computer Laboratory, Cambridge, UK [slides]
- 13th November 2012 - Programs in context - Intelligent and Adaptive Systems Research Group, Department of Computer Science, University of Warwick [slides]
- 5th November 2012 - Programs in context - Digital Technology Group Seminar, Computer Laboratory, Cambridge
- 30st August 2012 - A Notation for Comonads - Implementation and Application of Functional Languages 2012 (IFL'12), Oxford, UK [slides] [video].
- 22nd June 2012 - A Notation for Comonads, Context, and Intensional Programming - Algebra of Programming informal seminar, Department of Computer Science, Oxford, UK
- 13th June 2012 - Mathematical Structures for Data Types with Restricted Parametericity, Trends in Functional Programming 2012, St. Andrews, Scotland [slides]
- 8th June 2012 - Mathematical Structures for Data Types with Restricted Parametericity, CPRG Seminar, Computer Laboratory, Cambridge
- 27th April 2012 - The Unreasonable Effectivness of (High School) Mathematics, 5th Annual Jesus College Graduate Conference, Cambridge [slides] [video]
- 23rd Februrary 2012 - Coeffect systems: capturing context-dependence, University of Strathclyde, Mathematically Structured Programming Group Seminar, Glasgow (slides on request)
- 27th October 2011 - The Four Rs of Programming Language Design, Onward! Essay Presentation, SPLASH 2011, Portland, Oregon, USA.
- 7th October 2011 - Coeffect Systems and Typing - (with Tomas Petricek), CPRG Seminar, Computer Laboratory, Cambridge [slides]
- 7th September 2011 - Efficient and Correct Stencil Computations via Pattern Matching and Type Checking - IFIP Working Conference on DSLs, DSL 2011, Bordeaux, France [slides]
- 2nd September 2011 - Efficient and Correct Stencil Computations via Pattern Matching and Type Checking - CPRG Seminar, Computer Laboratory, Cambridge
- 2nd June 2011 - Programming with Comonads and Codo Notation - Tallinn University of Technology, Institute of Cybernetics, Estonia [slides]
- 20th May 2011 - When Monads and Comonads Overlap - CPRG Seminar, Computer Laboratory, Cambridge
- 13th May 2011 - Programming with Comonads and Codo Notation - CPRG Seminar, Computer Laboratory, Cambridge
- 26th November 2010 - repeat lecture - Mathematically Structuring Programming Languages - Research Students Lecture Course, Cambridge, UK. [slides, notes, and examples]
- 20th August 2010 - Rethinking Language Design for Parallelization, Intel Labs, Santa Clara, California, USA [slides]
- 2nd June 2010 - Programming with monads combined with comonads - ICFP PC Workshop 2010, Microsoft Research, Cambridge, UK [slides]
- 14th May 2010 - lecture - Mathematically Structuring Programming Languages - Research Students Lecture Course, Cambridge, UK. [slides, notes, and examples]
- 21st 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]
- 17th February 2010 - Haskell Type Constraints Unleashed - Fun in the Afternoon, Standard Chartered Bank, London [slides]
- 12th February 2010 - Haskell Type Constraints Unleashed - CPRG Seminar, Computer Laboratory, Cambridge
- 19th January 2010 - Ypnos: Declarative, Parallel Structured Grid Programming, DAMP '10, Madrid, Spain [slides]
- 20th November 2009 - Ypnos: Declarative, Parallel Structured Grid Programming, CPRG Seminar, Computer Laboratory, Cambridge [slides]
- 1st May 2009 - Programming Language Design, Jesus College Graduate Symposium '09 [slides]
- 7th April 2009 - Lucian: Dataflow and Object Orientation - BCTCS '09, University of Warwick, UK [slides] [abstract]
- 13th March 2009 - Interoperation of Lucid's Dataflow paradigm and Object-orientation with a Coalgebraic Semantics - CPRG Seminar, Computer Laboratory, Cambridge
I supervise Part II (final year) projects. I have written
down some proposals for potential projects.
Please get in touch if you are interested in me supervising your Part II project.
Previous projects supervised:
- 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)
I have supervised, or am currently supervising, 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, 2014)
- Comparative Architectures (Lent Term, 2009)
I gave a lecture entitled "Mathematically Structuring Programming Languages" as part of the "Current Research Topics" course at the Cambridge Computer Laboratory in May, 2010 and again in November, 2010, as part of a series of lectures given by students in the CPRG (lectures note, slides, errata, and examples).