The Verse Calculus: A Core Calculus for Deterministic Functional Logic Programming - Augustsson, Lennart; Breitner, Joachim; Claessen, Koen; Jhala, Ranjit; Peyton Jones, Simon; Shivers, Olin; Steele Jr, Guy L.; Sweeney, Tim (Proceedings of ACM on programming languages, 2023)
Functional logic languages have a rich literature, but it is tricky to give them a satisfying semantics. In this paper we describe the Verse calculus, VC, a new core calculus for deterministic functional logic programming. Our main contribution is to equip VC with a small-step rewrite semantics, so that we can reason about a VC program in the same way as one does with lambda calculus; that is, by applying successive rewrites to it. We also show that the rewrite system is confluent for well-behaved terms.