Papers 31

Ben Moon, Harley Eades III, Dominic Orchard.
Graded Modal Dependent Type Theory.
23 March 2021.
In the Proceedings of the 30th European Symposium on Programming (ESOP2021).
[Bibtex]
doi: 10.1007/9783030720193_17
[PDF]

Marco Gaboardi, Shinya Katsumata, Dominic Orchard, Tetsuya Sato.
Graded Hoare Logic and its Categorical Semantics.
23 March 2021.
In the Proceedings of the 30th European Symposium on Programming (ESOP2021).
[Bibtex]
doi: 10.1007/9783030720193_9
[PDF]

Jack Hughes, Dominic Orchard.
Resourceful Program Synthesis from Graded Linear Types.
01 September 2020.
[Bibtex]
[PDF]

Andrej Ivaskovic, Alan Mycroft, Dominic Orchard.
DataFlow Analyses as Effects and Graded Monads.
01 May 2020.
[Bibtex]
[PDF]

Dominic Orchard, Philip Wadler, Harley Eades III.
Unifying graded and parameterised monads.
30 March 2020.
In the Proceedings of the Eighth Workshop on Mathematically Structured Functional Programming, MSFP@ETAPS 2020, Dublin, Ireland, 25th April 2020. Electronic Proceedings in Theoretical Computer Science (EPTC) 317, pages 1838..
[Bibtex]
doi: 10.4204/EPTCS.317.2
[PDF]

Dominic Orchard, VilemBenjamin Liepelt, Harley Eades III.
Quantitative Program Reasoning with Graded Modal Types.
Proceedings of the ACM on Programming Languages (PACMPL),
18 August 2019.
Volume 3, Issue ICFP, 30 pages.
[Bibtex]
doi: 10.1145/3341714
[PDF]

Liyao Xia, Dominic Orchard, Meng Wang.
Composing Bidirectional Programs Monadically.
01 April 2019.
In the Proceedings of the 28th European Symposium on Programming (ESOP2019).
[Bibtex]
doi:
[PDF]
[Appendix]

Mistral Contrastin, Dominic Orchard, Andrew Rice.
Automatic Reordering for Dataflow Safety of Datalog.
03 September 2018.
Proceedings of the 20th International Symposium on Principles and Practice of Declarative Programming, PPDP 2018,.
[Bibtex]
[PDF]

Dominic Orchard.
Complexity bounds for container functors and comonads.
01 April 2018.
Information and Computation. Volume 261, Part 1, August 2018, Pages 144158.
[Bibtex]
[PDF]

Dominic Orchard, Mistral Contrastin, Matthew Danish, Andrew Rice.
Verifying spatial properties of array computations.
01 October 2017.
Proceedings of the ACM Programming Languages 1(OOPSLA): 75:175:30 (2017).
[Bibtex]
[PDF]

Dominic Orchard, Nobuko Yoshida.
Session Types with Linearity in Haskell.
01 January 2017.
Book chapter in Behavioural Types: from Theory to Tools.
[Bibtex]
[PDF]

Mistral Contrastin, Andrew Rice, Matthew Danish, Dominic Orchard.
UnitsofMeasure correctness in Fortran programs.
10 October 2016.
Computing in Science and Engineering 18(1): 102107.
[Bibtex]
[PDF]

Marco Gaboardi, Shinya Katsumata, Dominic Orchard, Flavien Breuvart, Tarmo Uustalu.
Combining effects and coeffects via grading.
04 September 2016.
ICFP '16: Proceedings of the 21st ACM SIGPLAN International Conference on Functional Programming, September 2016, Pages 476–489.
[Bibtex]
doi: 10.1145/2951913.2951939
[PDF]

Alan Mycroft, Dominic Orchard, Tomas Petricek.
Effect Systems Revisited  ControlFlow Algebra and Semantics.
10 April 2016.
Semantics, Logics, and Calculi (Essays Dedicated to Hanne Riis Nielson and Flemming Nielson on the Occasion of Their 60th Birthdays) LNCS 9560, 2016.
[Bibtex]
[PDF]

Dominic Orchard, Nobuko Yoshida.
Effects as sessions, sessions as effects.
11 January 2016.
POPL '16: Proceedings of the 43rd Annual ACM SIGPLANSIGACT Symposium on Principles of Programming Languages, January 2016, Pages 568–581.
[Bibtex]
doi: 10.1145/2837614.2837634
[PDF]

Dominic Orchard, Andrew Rice, Oleg Oshmyan.
Evolving Fortran types with inferred unitsofmeasure..
01 May 2015.
Journal of Computational Science, Volume 9 (Selected papers from International Conference on Computational Science), July 2015, Pages 156162.
[Bibtex]
[PDF]

Dominic Orchard, Nobuko Yoshida.
Using session types as an effect system.
01 April 2015.
In Proceedings PLACES 2015 colocated with ETAPS 2015.
[Bibtex]
[PDF]

Tomas Petricek, Dominic Orchard, Alan Mycroft.
Coeffects: a calculus of contextdependent computation.
03 September 2014.
Proceedings of the 19th ACM SIGPLAN International Conference on Functional programming, Gothenburg, Sweden, September 13, 2014.
[Bibtex]
[PDF]

Samuel Aaron, Dominic Orchard, Alan Blackwell.
Temporal semantics for a live coding language.
02 September 2014.
Proceedings of the 2nd ACM SIGPLAN international workshop on Functional art, music, modeling & design, FARM@ICFP 2014, Gothenburg,.
[Bibtex]
[PDF]

Dominic Orchard, Tomas Petricek.
Embedding effect systems in Haskell.
01 September 2014.
Haskell Symposium 2014, colocated with ICFP 2014.
[Bibtex]
[PDF]

RaoulGabriel Urma, Dominic Orchard, Alan Mycroft.
Programming language evolution workshop report.
28 July 2014.
PLE '14: Proceedings of the 1st Workshop on Programming Language Evolution, July 2014 Pages 1–3.
[Bibtex]
[PDF]

Dominic Orchard, Andrew Rice.
A Computational Science Agenda for Programming Language Research.
10 June 2014.
International Conference on Computational Science, 2014.
[Bibtex]
[PDF]

Leaf Petersen, Dominic Orchard, Neal Glew.
Automatic SIMD vectorization for Haskell.
23 September 2013.
ICFP 2013.
[Bibtex]
[PDF]

Tomas Petricek, Dominic Orchard, Alan Mycroft.
Coeffects: Unified Static Analysis of ContextDependence..
01 June 2013.
ICALP 2013.
[Bibtex]
[PDF]

Dominic Orchard, Alan Mycroft.
A Notation for Comonads.
30 August 2012.
IFL 2012.
[Bibtex]
[PDF]

Dominic Orchard.
The four Rs of programming language design..
22 October 2011.
ACM Symposium on New Ideas in Programming and Reflections on Software, Onward! 2011, part of SPLASH'11.
[Bibtex]
[PDF]

Dominic Orchard, Alan Mycroft.
Efficient and Correct Stencil Computation via Pattern Matching and Static Typing.
06 September 2011.
ACM Symposium on New Ideas in Programming and Reflections on Software, Onward! 2011, part of SPLASH'11.
[Bibtex]
[PDF]

Dominic Orchard, Tom Schrijvers.
Haskell Type Constraints Unleashed.
19 April 2010.
Functional and Logic Programming, 10th International Symposium, FLOPS 2010, Sendai, Japan, April 1921, 2010. .
[Bibtex]
[PDF]

Dominic Orchard, Max Bolingbroke, Alan Mycroft.
Ypnos: declarative, parallel structured grid programming.
19 January 2010.
Proceedings of the 2010 Workshop on Declarative Aspects of Multicore Programming, DAMP 2010, colocated with POPL 2010, Madrid, Spain.
[Bibtex]
[PDF]

Dominic Orchard, Jonathan Gover, Lee Lewis Herrington,, James Lohr, Duncan Stead, Cathy Young, Sara Kalvala.
muCell  Interdisciplinary Research in Modelling and Simulation of Cell Spatial Behaviour.
01 January 2009.
Reinvention: a journal of undergraduate research 2.1 (2009)..
[Bibtex]
[PDF]

Dominic Orchard, Steve Matthews.
Integrating Lucid's Declarative Dataflow Paradigm into ObjectOrientation.
01 January 2008.
Math. Comput. Sci. 2(1): 103122 (2008).
[Bibtex]
[PDF]
Extended abstracts 6

Timotej Tomandl, Dominic Orchard.
Formalising Algebraic Effects with NonRecoverable Failure.
HOPE 2021 colocated with ICFP.
22 August 2021.
[PDF]

Dominic Orchard, Mistral Contrastin, Matthew Danish, Andrew Rice.
Guiding user annotations for unitsofmeasure verification.
11 November 2020.
[PDF]

Benjamin Moon, Harley Eades III, Dominic Orchard.
Towards Graded Modal Dependent Types (extended abstract).
The workshop on TypeDriven Development colocated with the 25th ACM SIGPLAN International Conference on Functional Programming (ICFP)..
23 August 2020.
[PDF]

Harley Eades III, Dominic Orchard.
Grading Adjoint Logic.
Abstract (2 pages): 2020 Joint Workshop on Linearity & TLLA: The 6th Workshop on Linearity and the 4th Workshop on Trends in Linear Logic and Applications.
29 June 2020.
[PDF]

Matthew Danish, Miltiadis Allamanis, Marc Brockschmidt, Andrew Rice, Dominic Orchard.
Learning unitsofmeasure from scientific code.
2019 IEEE/ACM 14th International Workshop on Software Engineering for Science (SE4Science).
28 May 2019.
[Bibtex]
[PDF]

Dominic Orchard, Andrew Rice.
Upgrading Fortran source code using automatic refactoring.
Proceedings of the 2013 ACM Workshop on Refactoring Tools.
28 May 2013.
[Bibtex]
[PDF]
Unpublished 3

Dominic Orchard, Tomas Petricek, Alan Mycroft.
The semantic marriage of monads and effects.
2014.
[Bibtex]
[PDF]

Dominic Orchard, Alan Mycroft.
Categorical Programming for Data Types with Restricted Parametricity.
2012.
[Bibtex]
[PDF]

Dominic Orchard.
Should I use a Monad or a Comonad?.
2011.
[Bibtex]
[PDF]
Book reviews1

Dominic Orchard.
Computational Semantics with Functional Programming, by Jan van Eijck and Christina Unger.
Journal of Functional Programming 24(4): 524527 (2014).
2014.
[Bibtex]
[PDF]
PhD Dissertation1

Dominic Orchard.
Programming contextual computations.
University of Cambridge, 2014.
[Bibtex]
[PDF]