aij / awesome-recursion-schemes

Resources for learning and using recursion schemes.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Awesome Recursion Schemes Awesome

A curation of useful resources for learning about and using recursion schemes.

Recursion schemes are simple, composable combinators, that automate the process of traversing and recursing through nested data structures.

Contents

Introductions

  • Awesome Recursion Schemes - A curation of useful resources for learning about and using recursion schemes.
  • Practical Recursion Schemes - Introduction to pattern functors, fix points, anamorphisms, catamorphisms, paramorphisms and hylomorphisms, requiring very little prior knowledge.
  • An Introduction to Recursion Schemes - Three-part series in which you discover recursion schemes from scratch and implement a small subset of Edward Kmett's library.
  • Understanding Algebras - Bartosz Milewski explains F-algebras and shows how to use them in the context of catamorphisms.
  • Recursion Schemes in JavaScript and Flow - Series introducing recursion schemes and related concepts in JavaScript, aimed at developers with a minimal functional programming background.

Articles

Hylomorphisms in the Wild

Articles by Bartosz Milewski about solving small, practical problems by applying a hylomorphism.

Papers

Presentations

Cheat Sheets

Podcasts

Implementations

License

This content is licensed under CC0.

About

Resources for learning and using recursion schemes.