Recursion schemes for Idris
Switch branches/tags
Nothing to show
Clone or download
Latest commit e10780a Aug 24, 2018
Permalink
Failed to load latest commit information.
Data/Functor clearer Aug 19, 2018
Test mu Nov 11, 2017
docs docs etc Aug 17, 2018
.ctags tagfile Oct 23, 2017
.gitignore gitignore Aug 14, 2018
.travis.yml ci Aug 23, 2018
.yamllint travis Nov 1, 2017
Justfile docs idk Nov 13, 2017
LICENSE from template Jul 13, 2017
README.md readme updated w/ maturity Apr 7, 2018
TODO.md todo Apr 8, 2018
elba.toml gitignore Aug 14, 2018
recursion_schemes.ipkg remove dependencies Feb 26, 2018
test.ipkg remove dependencies Feb 26, 2018

README.md

recursion_schemes

Build Status

This is a library providing recursion schemes for Idris. It it is loosely based on Edward Kmett's Haskell library.

Installation

First, install idris-free, comonad and composition. Then:

idris --install recursion_schemes.ipkg

To run the tests, install specdris. Then:

idris --testpkg test.ipkg

Use

The classic paper Functional programming with bananas, lenses, envelopes and barbed wire is the inspiration behind the Haskell library and is the standard reference on the topic. You may also find Law and Order in Algorithmics to be of use.

Examples

In the Test.Spec module there are several examples, including a catamorphism, a zygomorphism, a mutumorphism, an Elgot algebra, a paramorphism, a dynamorphism, and a hylomorphism.

Documentation

You can find documentation here.