Skip to content

Instantly share code, notes, and snippets.

Embed
What would you like to do?
Ackermann function in Dhall
-- Credit to: https://news.ycombinator.com/item?id=15186988
let iterate
: (Natural Natural) Natural Natural
= \f n ->
fold (n + 1) f 1
let increment : Natural Natural = \n -> n + 1
let ackermann
: Natural Natural Natural
= \m -> fold m iterate increment
in ackermann
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.