Getting There and Back Again

02/28/2022
by   Olivier Danvy, et al.
0

"There and Back Again" (TABA) is a programming pattern where the recursive calls traverse one data structure and the subsequent returns traverse another. This article presents new TABA examples, refines existing ones, and formalizes both their control flow and their data flow using the Coq Proof Assistant. Each formalization mechanizes a pen-and-paper proof, thus making it easier to "get" TABA. In addition, this article identifies and illustrates a tail-recursive variant of TABA, There and Forth Again (TAFA) that does not come back but goes forth instead with more tail calls.

READ FULL TEXT

page 1

page 2

page 3

page 4

02/20/2023

Tail recursion transformation for invertible functions

Tail recursive functions allow for a wider range of optimisations than g...
02/19/2021

Tail Modulo Cons

OCaml function calls consume space on the system stack. Operating system...
05/23/2019

Deep Fuzzy Systems

An investigation of deep fuzzy systems is presented in this paper. A dee...
10/03/2022

Exact Recursive Probabilistic Programming

Recursive calls over recursive data are widely useful for generating pro...
12/27/2017

Guarded and Unguarded Iteration for Generalized Processes

Models of iterated computation, such as (completely) iterative monads, o...
08/30/2021

Learning Highly Recursive Input Grammars

This paper presents Arvada, an algorithm for learning context-free gramm...

Please sign up or login with your details

Forgot password? Click here to reset