This project consists of combinators and Church encodings of various data structures and operators implemented in Python.
The implementation of the combinators follows the descriptions of birds in mathematician Raymond Smullyan’s 1985 logic puzzle book, To Mock a Mockingbird.
Here’s some resources I’ve used to understand lambda calculus and to implement the combinators:
- Raymond Smullyan’s To Mock a Mockingbird
- Gabriel Lebec’s presentations
- David Beazley’s 2019 PyCon presentation on lambda calculus
- Chris Rathman’s Combinator Birds
- Matt Might’s Equational derivations of the Y combinator and Church encodings in Python blog post
- Greg Michaelson’s An Introduction to Functional Programming Through Lambda Calculus