<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
  <title>Track Awesome Recursion Schemes Updates Daily</title>
  <id>https://www.trackawesomelist.com/passy/awesome-recursion-schemes/feed.xml</id>
  <updated>2020-11-25T13:01:57.000Z</updated>
  <link rel="self" type="application/atom+xml" href="https://www.trackawesomelist.com/passy/awesome-recursion-schemes/feed.xml"/>
  <link rel="alternate" type="application/json" href="https://www.trackawesomelist.com/passy/awesome-recursion-schemes/feed.json"/>
  <link rel="alternate" type="text/html" href="https://www.trackawesomelist.com/passy/awesome-recursion-schemes/"/>
  <generator uri="https://github.com/bcomnes/jsonfeed-to-atom#readme" version="1.2.2">jsonfeed-to-atom</generator>
  <icon>https://www.trackawesomelist.com/favicon.ico</icon>
  <logo>https://www.trackawesomelist.com/icon.png</logo>
  <subtitle>Resources for learning and using recursion schemes.</subtitle>
  <entry>
    <id>https://www.trackawesomelist.com/2020/11/25/</id>
    <title>Awesome Recursion Schemes Updates on Nov 25, 2020</title>
    <updated>2020-11-25T13:01:57.000Z</updated>
    <published>2020-11-25T13:01:57.000Z</published>
    <content type="html"><![CDATA[<h3><p>Articles</p>
</h3>
<ul>
<li><a href="https://jtobin.io/promorphisms-pre-post" rel="noopener noreferrer">Promorphisms, Pre and Post</a> - Practical examples of pre- and postpromorphisms by Jared Tobin.</li>
</ul>
]]></content>
    <link rel="alternate" href="https://www.trackawesomelist.com/2020/11/25/"/>
    <summary>1 awesome projects updated on Nov 25, 2020</summary>
  </entry>
  <entry>
    <id>https://www.trackawesomelist.com/2020/06/15/</id>
    <title>Awesome Recursion Schemes Updates on Jun 15, 2020</title>
    <updated>2020-06-15T13:49:29.000Z</updated>
    <published>2020-06-15T13:49:29.000Z</published>
    <content type="html"><![CDATA[<h3><p>Articles</p>
</h3>
<ul>
<li><a href="https://duplode.github.io/posts/whats-in-a-fold.html" rel="noopener noreferrer">What's in a Fold: The Basic Catamorphism in recursion-schemes</a> - Introduces catamorphism as a generalization of fold.</li>
</ul>
]]></content>
    <link rel="alternate" href="https://www.trackawesomelist.com/2020/06/15/"/>
    <summary>1 awesome projects updated on Jun 15, 2020</summary>
  </entry>
  <entry>
    <id>https://www.trackawesomelist.com/2019/09/21/</id>
    <title>Awesome Recursion Schemes Updates on Sep 21, 2019</title>
    <updated>2019-09-21T22:59:19.000Z</updated>
    <published>2019-09-21T22:59:19.000Z</published>
    <content type="html"><![CDATA[<h3><p>Articles</p>
</h3>
<ul>
<li><a href="https://free.cofree.io/2017/11/13/recursion/" rel="noopener noreferrer">Recursion Schemes in Scala</a> - Introduces the fixpoint combinator, anamorphism, catamorphism, hylomorphism, paramorphism, apomorphism, histomorphism, dynamorphism and futumorphism.</li>
</ul>
]]></content>
    <link rel="alternate" href="https://www.trackawesomelist.com/2019/09/21/"/>
    <summary>1 awesome projects updated on Sep 21, 2019</summary>
  </entry>
  <entry>
    <id>https://www.trackawesomelist.com/2019/05/08/</id>
    <title>Awesome Recursion Schemes Updates on May 08, 2019</title>
    <updated>2019-05-08T18:47:28.000Z</updated>
    <published>2019-05-08T18:47:28.000Z</published>
    <content type="html"><![CDATA[<h3><p>Podcasts / Hylomorphisms in the Wild</p>
</h3>
<ul>
<li><a href="https://scala.love/" rel="noopener noreferrer">Scala Love</a> - Podcast about Scala that brings up
recursion schemes in <a href="https://scala.love/happy-valentin/" rel="noopener noreferrer">the second episode</a>.</li>
</ul>

<ul>
<li><a href="https://www.haskellcast.com/" rel="noopener noreferrer">The Haskell Cast</a> - Recursion schemes come up in
<a href="https://www.haskellcast.com/episode/013-john-wiegley-on-categories-and-compilers" rel="noopener noreferrer">Episode 13 with John Wiegley</a>.</li>
</ul>
<h3><p>Implementations / Hylomorphisms in the Wild</p>
</h3>
<ul>
<li><a href="https://github.com/andyscott/droste" rel="noopener noreferrer">andyscott/droste (⭐351)</a> for Scala using Cats -
Generalized folds, unfolds, and traversals for fixed point data structures.</li>
</ul>
]]></content>
    <link rel="alternate" href="https://www.trackawesomelist.com/2019/05/08/"/>
    <summary>3 awesome projects updated on May 08, 2019</summary>
  </entry>
  <entry>
    <id>https://www.trackawesomelist.com/2019/01/28/</id>
    <title>Awesome Recursion Schemes Updates on Jan 28, 2019</title>
    <updated>2019-01-28T11:14:53.000Z</updated>
    <published>2019-01-28T11:14:53.000Z</published>
    <content type="html"><![CDATA[<h3><p>Introductions</p>
</h3>
<ul>
<li><a href="https://github.com/passy/awesome-recursion-schemes" rel="noopener noreferrer">Awesome Recursion Schemes (⭐1.1k)</a> - A curation of useful resources for learning about and using recursion schemes.</li>
</ul>
]]></content>
    <link rel="alternate" href="https://www.trackawesomelist.com/2019/01/28/"/>
    <summary>1 awesome projects updated on Jan 28, 2019</summary>
  </entry>
  <entry>
    <id>https://www.trackawesomelist.com/2019/01/13/</id>
    <title>Awesome Recursion Schemes Updates on Jan 13, 2019</title>
    <updated>2019-01-13T12:14:07.000Z</updated>
    <published>2019-01-13T12:14:07.000Z</published>
    <content type="html"><![CDATA[<h3><p>Articles / Hylomorphisms in the Wild</p>
</h3>
<ul>
<li><a href="https://bartoszmilewski.com/2017/12/29/stalking-a-hylomorphism-in-the-wild/" rel="noopener noreferrer">Stalking a Hylomorphism in the Wild</a> - Advent of Code 2017, Domino challenge</li>
</ul>

<ul>
<li><a href="https://bartoszmilewski.com/2018/12/20/open-season-on-hylomorphisms/" rel="noopener noreferrer">Open Seasons on Hylomorphisms</a> - Advent of Code 2018, String comparison challenge</li>
</ul>
]]></content>
    <link rel="alternate" href="https://www.trackawesomelist.com/2019/01/13/"/>
    <summary>2 awesome projects updated on Jan 13, 2019</summary>
  </entry>
  <entry>
    <id>https://www.trackawesomelist.com/2018/12/27/</id>
    <title>Awesome Recursion Schemes Updates on Dec 27, 2018</title>
    <updated>2018-12-27T10:06:49.000Z</updated>
    <published>2018-12-27T10:06:49.000Z</published>
    <content type="html"><![CDATA[<h3><p>Cheat Sheets / Hylomorphisms in the Wild</p>
</h3>
<ul>
<li><a href="https://ipfs.io/ipfs/QmTppu1VDAQWsdiyVSZX6qb8PErdpwzNP2oKfEhcgaBvWR/guide-to-morphisms.pdf" rel="noopener noreferrer">The Hitchhiker's Guide to Morphisms</a> - Overview of different morphisms including a printable PDF.</li>
</ul>
]]></content>
    <link rel="alternate" href="https://www.trackawesomelist.com/2018/12/27/"/>
    <summary>1 awesome projects updated on Dec 27, 2018</summary>
  </entry>
  <entry>
    <id>https://www.trackawesomelist.com/2018/08/27/</id>
    <title>Awesome Recursion Schemes Updates on Aug 27, 2018</title>
    <updated>2018-08-27T14:01:03.000Z</updated>
    <published>2018-08-27T14:01:03.000Z</published>
    <content type="html"><![CDATA[<h3><p>Presentations / Hylomorphisms in the Wild</p>
</h3>
<ul>
<li><a href="https://www.youtube.com/watch?v=XZ9nPZbaYfE&amp;t=3s" rel="noopener noreferrer">Peeling the Banana: Recursion Schemes from First Principles</a> - Zainab Ali's Introductory talk presented at LambdaWorld.</li>
</ul>
]]></content>
    <link rel="alternate" href="https://www.trackawesomelist.com/2018/08/27/"/>
    <summary>1 awesome projects updated on Aug 27, 2018</summary>
  </entry>
  <entry>
    <id>https://www.trackawesomelist.com/2018/07/16/</id>
    <title>Awesome Recursion Schemes Updates on Jul 16, 2018</title>
    <updated>2018-07-16T03:08:15.000Z</updated>
    <published>2018-07-16T03:08:15.000Z</published>
    <content type="html"><![CDATA[<h3><p>Implementations / Hylomorphisms in the Wild</p>
</h3>
<ul>
<li><a href="https://github.com/vmchale/recursion" rel="noopener noreferrer">recursion (⭐8)</a> for ATS - Demonstration of
recursion schemes in ATS.</li>
</ul>
]]></content>
    <link rel="alternate" href="https://www.trackawesomelist.com/2018/07/16/"/>
    <summary>1 awesome projects updated on Jul 16, 2018</summary>
  </entry>
  <entry>
    <id>https://www.trackawesomelist.com/2018/05/07/</id>
    <title>Awesome Recursion Schemes Updates on May 07, 2018</title>
    <updated>2018-05-07T04:37:48.000Z</updated>
    <published>2018-05-07T04:37:48.000Z</published>
    <content type="html"><![CDATA[<h3><p>Implementations / Hylomorphisms in the Wild</p>
</h3>
<ul>
<li><a href="https://github.com/sellout/dada" rel="noopener noreferrer">dada (⭐58)</a> for Dhall - a library for recursion
schemes in Dhall.</li>
</ul>
]]></content>
    <link rel="alternate" href="https://www.trackawesomelist.com/2018/05/07/"/>
    <summary>1 awesome projects updated on May 07, 2018</summary>
  </entry>
  <entry>
    <id>https://www.trackawesomelist.com/2018/04/20/</id>
    <title>Awesome Recursion Schemes Updates on Apr 20, 2018</title>
    <updated>2018-04-20T03:26:11.000Z</updated>
    <published>2018-04-20T03:26:11.000Z</published>
    <content type="html"><![CDATA[<h3><p>Implementations / Hylomorphisms in the Wild</p>
</h3>
<ul>
<li><a href="https://github.com/aedans/Katalyst" rel="noopener noreferrer">Katalyst (⭐22)</a> for Kotlin - a re-envisioning based off Matryoshka using lightweight higher kinded polymorphism.</li>
</ul>
]]></content>
    <link rel="alternate" href="https://www.trackawesomelist.com/2018/04/20/"/>
    <summary>1 awesome projects updated on Apr 20, 2018</summary>
  </entry>
  <entry>
    <id>https://www.trackawesomelist.com/2018/04/19/</id>
    <title>Awesome Recursion Schemes Updates on Apr 19, 2018</title>
    <updated>2018-04-19T22:54:26.000Z</updated>
    <published>2018-04-19T22:54:26.000Z</published>
    <content type="html"><![CDATA[<h3><p>Articles</p>
</h3>
<ul>
<li><a href="http://blog.sumtypeofway.com/recursion-schemes-part-v/" rel="noopener noreferrer">Recursion Schemes, Part V: Hello, Hylomorphisms</a></li>
</ul>
]]></content>
    <link rel="alternate" href="https://www.trackawesomelist.com/2018/04/19/"/>
    <summary>1 awesome projects updated on Apr 19, 2018</summary>
  </entry>
  <entry>
    <id>https://www.trackawesomelist.com/2018/03/29/</id>
    <title>Awesome Recursion Schemes Updates on Mar 29, 2018</title>
    <updated>2018-03-29T14:49:04.000Z</updated>
    <published>2018-03-29T14:49:04.000Z</published>
    <content type="html"><![CDATA[<h3><p>Articles</p>
</h3>
<ul>
<li><a href="http://blog.sumtypeofway.com/recursion-schemes-part-iv-time-is-of-the-essence/" rel="noopener noreferrer">Recursion Schemes, Part IV: Time is of the Essence</a> - Practical article about histomorphism and the futumorphism.</li>
</ul>
]]></content>
    <link rel="alternate" href="https://www.trackawesomelist.com/2018/03/29/"/>
    <summary>1 awesome projects updated on Mar 29, 2018</summary>
  </entry>
  <entry>
    <id>https://www.trackawesomelist.com/2017/09/22/</id>
    <title>Awesome Recursion Schemes Updates on Sep 22, 2017</title>
    <updated>2017-09-22T21:46:53.000Z</updated>
    <published>2017-09-22T21:46:53.000Z</published>
    <content type="html"><![CDATA[<h3><p>Implementations / Hylomorphisms in the Wild</p>
</h3>
<ul>
<li><a href="https://github.com/vmchale/recursion_schemes/" rel="noopener noreferrer">recursion_schemes (⭐60)</a> for
Idris, based off Edward Kmett's Haskell library.</li>
</ul>
]]></content>
    <link rel="alternate" href="https://www.trackawesomelist.com/2017/09/22/"/>
    <summary>1 awesome projects updated on Sep 22, 2017</summary>
  </entry>
  <entry>
    <id>https://www.trackawesomelist.com/2017/09/08/</id>
    <title>Awesome Recursion Schemes Updates on Sep 08, 2017</title>
    <updated>2017-09-08T00:58:42.000Z</updated>
    <published>2017-09-08T00:52:01.000Z</published>
    <content type="html"><![CDATA[<h3><p>Introductions</p>
</h3>
<ul>
<li><a href="https://medium.com/@JosephJnk/recursion-schemes-in-javascript-and-flow-with-static-land-recursision-schemes-97cf10599fb7" rel="noopener noreferrer">Recursion Schemes in JavaScript and Flow</a> -
Series introducing recursion schemes and related concepts in JavaScript,
aimed at developers with a minimal functional programming background.</li>
</ul>
<h3><p>Implementations / Hylomorphisms in the Wild</p>
</h3>
<ul>
<li><a href="https://github.com/JosephJNK/static-land-recursion-schemes" rel="noopener noreferrer">static-land-recursion-schemes (⭐21)</a> for JavaScript/Flow -
Schemes for data structures written in the style of <a href="https://github.com/gcanti/flow-static-land" rel="noopener noreferrer">flow-static-land (⭐415)</a>.</li>
</ul>
]]></content>
    <link rel="alternate" href="https://www.trackawesomelist.com/2017/09/08/"/>
    <summary>2 awesome projects updated on Sep 08, 2017</summary>
  </entry>
  <entry>
    <id>https://www.trackawesomelist.com/2017/08/25/</id>
    <title>Awesome Recursion Schemes Updates on Aug 25, 2017</title>
    <updated>2017-08-25T03:32:14.000Z</updated>
    <published>2017-08-25T03:32:14.000Z</published>
    <content type="html"><![CDATA[<h3><p>Presentations / Hylomorphisms in the Wild</p>
</h3>
<ul>
<li><a href="https://github.com/sellout/recursion-scheme-talk" rel="noopener noreferrer">recursion-scheme-talk (⭐204)</a> - Collection of slide decks about recursion schemes.</li>
</ul>
]]></content>
    <link rel="alternate" href="https://www.trackawesomelist.com/2017/08/25/"/>
    <summary>1 awesome projects updated on Aug 25, 2017</summary>
  </entry>
  <entry>
    <id>https://www.trackawesomelist.com/2017/06/06/</id>
    <title>Awesome Recursion Schemes Updates on Jun 06, 2017</title>
    <updated>2017-06-06T18:46:57.000Z</updated>
    <published>2017-06-06T18:46:57.000Z</published>
    <content type="html"><![CDATA[<h3><p>Papers / Hylomorphisms in the Wild</p>
</h3>
<ul>
<li><a href="http://research.microsoft.com/en-us/um/people/simonpj/Papers/hmap/hmap.ps" rel="noopener noreferrer">Scrap your boilerplate: a practical design pattern for generic programming, 2003, SPJ et al.</a> -
Design pattern for writing programs that traverse data structures built from rich mutually-recursive data types.</li>
</ul>
<h3><p>Implementations / Hylomorphisms in the Wild</p>
</h3>
<ul>
<li><a href="https://github.com/slamdata/purescript-matryoshka" rel="noopener noreferrer">purescript-matryoshka (⭐57)</a> for PureScript -
Work-in-process port of matryoshka.</li>
</ul>
]]></content>
    <link rel="alternate" href="https://www.trackawesomelist.com/2017/06/06/"/>
    <summary>2 awesome projects updated on Jun 06, 2017</summary>
  </entry>
  <entry>
    <id>https://www.trackawesomelist.com/2017/02/07/</id>
    <title>Awesome Recursion Schemes Updates on Feb 07, 2017</title>
    <updated>2017-02-07T19:52:20.000Z</updated>
    <published>2017-02-07T19:52:20.000Z</published>
    <content type="html"><![CDATA[<h3><p>Presentations / Hylomorphisms in the Wild</p>
</h3>
<ul>
<li><a href="https://www.youtube.com/watch?v=-98fR9VmLbQ" rel="noopener noreferrer">Programming with algebras</a> - Bartosz Milewski's article in talk form, presented at LambdaCon.</li>
</ul>
]]></content>
    <link rel="alternate" href="https://www.trackawesomelist.com/2017/02/07/"/>
    <summary>1 awesome projects updated on Feb 07, 2017</summary>
  </entry>
  <entry>
    <id>https://www.trackawesomelist.com/2017/01/21/</id>
    <title>Awesome Recursion Schemes Updates on Jan 21, 2017</title>
    <updated>2017-01-21T12:23:10.000Z</updated>
    <published>2017-01-21T12:23:10.000Z</published>
    <content type="html"><![CDATA[<h3><p>Presentations / Hylomorphisms in the Wild</p>
</h3>
<ul>
<li><a href="https://www.youtube.com/watch?v=24UoRaoKLjM" rel="noopener noreferrer">Recursion: Where Functional Programming Hits Bottom</a> - Introduction to recursive fix point data structures and recursion schemes in Haskell and Scala by Greg Pfeil.</li>
</ul>
]]></content>
    <link rel="alternate" href="https://www.trackawesomelist.com/2017/01/21/"/>
    <summary>1 awesome projects updated on Jan 21, 2017</summary>
  </entry>
  <entry>
    <id>https://www.trackawesomelist.com/2017/01/20/</id>
    <title>Awesome Recursion Schemes Updates on Jan 20, 2017</title>
    <updated>2017-01-20T09:30:48.000Z</updated>
    <published>2017-01-20T09:30:48.000Z</published>
    <content type="html"><![CDATA[<h3><p>Presentations / Hylomorphisms in the Wild</p>
</h3>
<ul>
<li><a href="https://www.youtube.com/watch?v=5Kr7IykGMzU" rel="noopener noreferrer">Bracer: Transforming Real-World Languages with Coproducts and Recursion Schemes</a> - High-level talk about structuring programs with coproducts and recursion schemes by Patrick Thomson.</li>
</ul>
]]></content>
    <link rel="alternate" href="https://www.trackawesomelist.com/2017/01/20/"/>
    <summary>1 awesome projects updated on Jan 20, 2017</summary>
  </entry>
  <entry>
    <id>https://www.trackawesomelist.com/2017/01/13/</id>
    <title>Awesome Recursion Schemes Updates on Jan 13, 2017</title>
    <updated>2017-01-13T11:04:39.000Z</updated>
    <published>2017-01-13T10:39:29.000Z</published>
    <content type="html"><![CDATA[<h3><p>Articles</p>
</h3>
<ul>
<li><a href="https://jtobin.io/time-traveling-recursion" rel="noopener noreferrer">Time Traveling Recursion Schemes</a> - Exploring histo and futu by example by Jared Tobin.</li>
</ul>

<ul>
<li><a href="http://logji.blogspot.co.uk/2012/02/correcting-visitor-pattern.html" rel="noopener noreferrer">Correcting the Visitor pattern</a> - Showing that the Visitor pattern implements an f-algebra for use with a catamorphism (in Java).</li>
</ul>
<h3><p>Implementations / Hylomorphisms in the Wild</p>
</h3>
<ul>
<li><a href="https://github.com/ekmett/recursion-schemes/" rel="noopener noreferrer">recursion-schemes (⭐310)</a> for
Haskell - The canonical implementation by Edward Kmett.</li>
</ul>

<ul>
<li><a href="https://github.com/slamdata/matryoshka" rel="noopener noreferrer">Matryoshka (⭐795)</a> for Scala using Scalaz -
Generalized folds, unfolds, and traversals for fixed point data structures.</li>
</ul>
]]></content>
    <link rel="alternate" href="https://www.trackawesomelist.com/2017/01/13/"/>
    <summary>4 awesome projects updated on Jan 13, 2017</summary>
  </entry>
  <entry>
    <id>https://www.trackawesomelist.com/2017/01/12/</id>
    <title>Awesome Recursion Schemes Updates on Jan 12, 2017</title>
    <updated>2017-01-12T15:28:41.000Z</updated>
    <published>2017-01-12T15:28:41.000Z</published>
    <content type="html"><![CDATA[<h3><p>Articles</p>
</h3>
<ul>
<li><a href="https://github.com/sellout/recursion-scheme-talk/blob/master/cheat%20sheet.pdf" rel="noopener noreferrer">Cheat Sheet (⭐204)</a> - Map of various recursion schemes and their duals.</li>
</ul>
]]></content>
    <link rel="alternate" href="https://www.trackawesomelist.com/2017/01/12/"/>
    <summary>1 awesome projects updated on Jan 12, 2017</summary>
  </entry>
  <entry>
    <id>https://www.trackawesomelist.com/2017/01/10/</id>
    <title>Awesome Recursion Schemes Updates on Jan 10, 2017</title>
    <updated>2017-01-10T18:58:01.000Z</updated>
    <published>2017-01-10T18:58:01.000Z</published>
    <content type="html"><![CDATA[<h3><p>Articles</p>
</h3>
<ul>
<li><a href="https://jtobin.io/rotating-squares" rel="noopener noreferrer">Rotating Squares</a> - Using a hylomorphism to rotate a quadtree by Jared Tobin.</li>
</ul>
]]></content>
    <link rel="alternate" href="https://www.trackawesomelist.com/2017/01/10/"/>
    <summary>1 awesome projects updated on Jan 10, 2017</summary>
  </entry>
  <entry>
    <id>https://www.trackawesomelist.com/2017/01/09/</id>
    <title>Awesome Recursion Schemes Updates on Jan 09, 2017</title>
    <updated>2017-01-09T22:10:01.000Z</updated>
    <published>2017-01-09T22:10:01.000Z</published>
    <content type="html"><![CDATA[<h3><p>Podcasts / Hylomorphisms in the Wild</p>
</h3>
<ul>
<li><a href="http://www.magicreadalong.com/" rel="noopener noreferrer">Magic Read Along</a> - Casual discussions about
category theory that often bring up recursion schemes, including <a href="http://www.magicreadalong.com/episode/33" rel="noopener noreferrer">episode
33</a> which talks about Histomorphisms
and Futumorphisms.</li>
</ul>
]]></content>
    <link rel="alternate" href="https://www.trackawesomelist.com/2017/01/09/"/>
    <summary>1 awesome projects updated on Jan 09, 2017</summary>
  </entry>
  <entry>
    <id>https://www.trackawesomelist.com/2017/01/01/</id>
    <title>Awesome Recursion Schemes Updates on Jan 01, 2017</title>
    <updated>2017-01-01T12:23:05.000Z</updated>
    <published>2017-01-01T12:23:05.000Z</published>
    <content type="html"><![CDATA[<h3><p>Articles</p>
</h3>
<ul>
<li><a href="http://comonad.com/reader/2009/recursion-schemes/" rel="noopener noreferrer">Recursion Schemes: A Field Guide (Redux)</a> -
List of various recursion schemes with code samples.</li>
</ul>
]]></content>
    <link rel="alternate" href="https://www.trackawesomelist.com/2017/01/01/"/>
    <summary>1 awesome projects updated on Jan 01, 2017</summary>
  </entry>
  <entry>
    <id>https://www.trackawesomelist.com/2016/12/30/</id>
    <title>Awesome Recursion Schemes Updates on Dec 30, 2016</title>
    <updated>2016-12-30T22:35:55.000Z</updated>
    <published>2016-12-30T22:30:02.000Z</published>
    <content type="html"><![CDATA[<h3><p>Introductions</p>
</h3>
<ul>
<li><a href="https://jtobin.io/practical-recursion-schemes" rel="noopener noreferrer">Practical Recursion Schemes</a> -
Introduction to pattern functors, fix points, anamorphisms, catamorphisms,
paramorphisms and hylomorphisms, requiring very little prior knowledge.</li>
</ul>

<ul>
<li><a href="http://blog.sumtypeofway.com/an-introduction-to-recursion-schemes/" rel="noopener noreferrer">An Introduction to Recursion Schemes</a> -
Three-part series in which you discover recursion schemes from scratch and
implement a small subset of Edward Kmett's library.</li>
</ul>

<ul>
<li><a href="https://www.schoolofhaskell.com/user/bartosz/understanding-algebras" rel="noopener noreferrer">Understanding Algebras</a> -
Bartosz Milewski explains F-algebras and shows how to use them in the context of
catamorphisms.</li>
</ul>
<h3><p>Articles</p>
</h3>
<ul>
<li><a href="https://wiki.haskell.org/Catamorphisms" rel="noopener noreferrer">Catamorphisms</a> - Definition on the Haskell Wiki.</li>
</ul>

<ul>
<li><a href="https://www.schoolofhaskell.com/user/edwardk/recursion-schemes/catamorphisms" rel="noopener noreferrer">Catamorphisms</a> -
Short definition with code on School of Haskell by Edward Kmett.</li>
</ul>
<h3><p>Papers / Hylomorphisms in the Wild</p>
</h3>
<ul>
<li><a href="http://maartenfokkinga.github.io/utwente/mmf91m.pdf" rel="noopener noreferrer">Functional Programming with Bananas, Lenses, Envelopes and Barbed Wire, 1991, Meijer et al.</a> -
The original paper most of this is based on.</li>
</ul>

<ul>
<li><a href="http://www.cs.ox.ac.uk/ralf.hinze/publications/Sorting.pdf" rel="noopener noreferrer">A Duality of Sorts, 2013, Hinze et al.</a> -
Shows that many basic sorting algorithms exist as a pair, and that these pairs
arise naturally out of the duality between folds and unfolds.</li>
</ul>

<ul>
<li><a href="http://www.cs.ox.ac.uk/people/daniel.james/sorting/sorting.pdf" rel="noopener noreferrer">Sorting with Bialgebras and Distributive Laws, 2012, Hinze et al.</a> -
Shows how paramorphisms and apomorphisms can be used for more efficient
implementations of sorting algorithms.</li>
</ul>
<h3><p>Presentations / Hylomorphisms in the Wild</p>
</h3>
<ul>
<li><a href="http://www.timphilipwilliams.com/slides.html" rel="noopener noreferrer">Slidedecks by Tim Philip Williams</a> -
"Recursion Schemes by Example" and "Exotic Tools for Exotic Trades" provide
concise definitions as well as practical examples of many recursion schemes.</li>
</ul>

<ul>
<li><a href="https://www.youtube.com/watch?v=9EGYSb9vov8" rel="noopener noreferrer">Unifying Structured Recursion Schemes</a> -
12 min presentation by Ralf Hinze, Nicolas Wu, and Jeremy Gibbons.</li>
</ul>

<ul>
<li><a href="https://www.youtube.com/watch?v=Zw9KeP3OzpU" rel="noopener noreferrer">Recursion Schemes</a> -
Presented by Tim Williams at the London Haskell meetup.</li>
</ul>

<ul>
<li><a href="https://www.youtube.com/watch?v=PK4SOaAGVfg" rel="noopener noreferrer">F-algebras or: How I Learned to Stop Worrying and Love the Type System</a> -
Presented by Anthony Burzillo at the NYC Haskell User's Group.</li>
</ul>

<ul>
<li><a href="https://www.youtube.com/watch?v=i5A2Amfcir8" rel="noopener noreferrer">A Gentle Introduction to Recursion Schemes</a> -
Presented by Jean Remi Desjardins at Lambdaconf 2016.</li>
</ul>
]]></content>
    <link rel="alternate" href="https://www.trackawesomelist.com/2016/12/30/"/>
    <summary>13 awesome projects updated on Dec 30, 2016</summary>
  </entry>
</feed>