Fantastic Morphisms and Where to Find Them: A Guide to Recursion Schemes

02/28/2022
by   Zhixuan Yang, et al.
0

Structured recursion schemes have been widely used in constructing, optimising, and reasoning about programs over inductive and coinductive datatypes. Their plain forms, catamorphisms and anamorphisms, are restricted in expressiveness. Thus many generalisations have been proposed, which further lead to several unifying frameworks of structured recursion schemes. However, the existing work on unifying frameworks typically focuses on the categorical foundation, and thus is perhaps inaccessible to practitioners who are willing to apply recursion schemes in practice but are not versed in category theory. To fill this gap, this expository paper introduces structured recursion schemes from a practical point of view: a variety of recursion schemes are motivated and explained in contexts of concrete programming examples. The categorical duals of these recursion schemes are also explained.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
07/02/2022

On Structuring Functional Programs with Monoidal Profunctors

We study monoidal profunctors as a tool to reason and structure pure fun...
research
06/07/2023

On categorical structures arising from implicative algebras: from topology to assemblies

Implicative algebras have been recently introduced by Miquel in order to...
research
08/05/2016

Iterative Learning of Answer Set Programs from Context Dependent Examples

In recent years, several frameworks and systems have been proposed that ...
research
12/23/2019

Notes on Category Theory with examples from basic mathematics

These notes were originally developed as lecture notes for a category th...
research
03/07/2023

Computing with Categories in Machine Learning

Category theory has been successfully applied in various domains of scie...
research
05/06/2020

Categorical Vector Space Semantics for Lambek Calculus with a Relevant Modality

We develop a categorical compositional distributional semantics for Lamb...

Please sign up or login with your details

Forgot password? Click here to reset