Abstract
Recently, a number of reversible functional programming languages have been proposed. Common to several of these is the assumption of totality, a property that is not necessarily desirable, and certainly not required in order to guarantee reversibility. In a categorical setting, however, faithfully capturing partiality requires handling it as additional structure. Recently, Giles studied inverse categories as a model of partial reversible (functional) programming. In this paper, we show how additionally assuming the existence of countable joins on such inverse categories leads to a number of properties that are desirable when modelling reversible functional programming, notably morphism schemes for reversible recursion, a †-trace, and algebraic ω-compactness. This gives a categorical account of reversible recursion, and, for the latter, provides an answer to the problem posed by Giles regarding the formulation of recursive data types at the inverse category level.
Original language | English |
---|---|
Title of host publication | Foundations of Software Science and Computation Structures : 19th International Conference, FOSSACS 2016, held as part of the European Joint Conferences on Theory and Practice of Software, ETAPS 2016, Eindhoven, The Netherlands, April 2–8, 2016, Proceedings |
Editors | Bart Jacobs, Christof Löding |
Number of pages | 18 |
Publisher | Springer |
Publication date | 2016 |
Pages | 73-90 |
ISBN (Print) | 978-3-662-49629-9 |
ISBN (Electronic) | 978-3-662-49630-5 |
DOIs | |
Publication status | Published - 2016 |
Event | Foundations of Software Science and Computation Structures - Eindhoven, Netherlands Duration: 2 Apr 2016 → 8 Apr 2016 Conference number: 19 |
Conference
Conference | Foundations of Software Science and Computation Structures |
---|---|
Number | 19 |
Country/Territory | Netherlands |
City | Eindhoven |
Period | 02/04/2016 → 08/04/2016 |
Series | Lecture notes in computer science |
---|---|
Volume | 9634 |
ISSN | 0302-9743 |