I hereby claim:
- I am juretta on github.
- I am sts (https://keybase.io/sts) on keybase.
- I have a public key whose fingerprint is E251 A238 C6F4 E79C BA6C A4CB 1D04 C854 D612 4057
To claim this, I am signing this object:
I hereby claim:
To claim this, I am signing this object:
{-# Language RecordWildCards, RankNTypes #-} | |
import Data.List (foldl') | |
data Church = Church (forall x. (x -> x) -> x -> x) | |
zero :: Church | |
zero = Church (\f x -> x) | |
succ_ :: Church -> Church | |
succ_ (Church n) = Church (\f x -> f ( n f x)) |