Interleaving classical and reversible

18 Feb 2021  ·  Armando B. Matos, Luca Paolini, Luca Roversi ·

Given a simple recursive function, we show how to extract two interacting processes from it. The two processes can be described by means of iterative programs, one of which is intrinsically reversible, in a language that, up to minor details, belongs to the core of widely used imperative programming languages... We implement the two processes as interleaving synchronous JAVA threads whose interaction is equivalent to the recursive function they are extracted from. read more

PDF Abstract
No code implementations yet. Submit your code now


Programming Languages D.2.1, D.3.2, D.3.3


  Add Datasets introduced or used in this paper