https://github.com/ggandor/churchbuzz
FizzBuzz implemented in Church encoding, from scratch
https://github.com/ggandor/churchbuzz
church-encoding clojure computer-science fizzbuzz lambda-calculus understanding-computation
Last synced: 8 months ago
JSON representation
FizzBuzz implemented in Church encoding, from scratch
- Host: GitHub
- URL: https://github.com/ggandor/churchbuzz
- Owner: ggandor
- License: unlicense
- Created: 2020-09-27T13:55:35.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2021-01-22T19:27:32.000Z (over 5 years ago)
- Last Synced: 2025-01-23T08:20:27.672Z (over 1 year ago)
- Topics: church-encoding, clojure, computer-science, fizzbuzz, lambda-calculus, understanding-computation
- Language: Clojure
- Homepage:
- Size: 6.84 KB
- Stars: 2
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE.md
Awesome Lists containing this project
README
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](https://computationbook.com/), 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](https://codon.com/programming-with-nothing) that is a
proto-version of the book chapter, with a video link, and pretty much the same
content.
See also the [code repo](https://github.com/tomstuart/computationbook) for the book.