Skip to content

FizzBuzz implemented in Church encoding, from scratch

License

Notifications You must be signed in to change notification settings

ggandor/ChurchBuzz

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 

Repository files navigation

ChurchBuzz

This repo contains a Church-encoded implementation of the FizzBuzz algorithm in Clojure, using nothing else than anonymous functions, imitating the untyped lambda calculus.

It is based on a chapter of Tom Stuart's magnificent book Understanding Computation, where he uses Ruby as the implementation language. The port closely follows the steps presented on pages 162-192, with minor differences and additions (for example, naming the functions according to Clojure/Lisp conventions, or using ASCII values for character representation).

At the moment, this is not intended to be a standalone tutorial, but first and foremost a study guide or reference for the related section, for people more familiar with Lisp dialects.

Here is an article that is a proto-version of the book chapter, with a video link, and pretty much the same content.

See also the code repo for the book.