This repository contains an implementation of the Ackermann function in the Piet language.
The code is a visual experience.
The Ackermann function, named for Wilhelm Ackermann, is an example of a total computable function which is not primitive recursive. As the value of its arguments increases linearly, the time required to compute it increases superexponentially.
- The Ackermann function on Wikipedia.
- The Ackermann function on the Computerphile YouTube channel.
Piet is a stack-based programming language which consists of images rather than text. It was written by David Morgan-Mar, prolific author of esoteric programming languages, and named after Dutch painter Piet Mondrian. The interpreter provides a formalistic analysis of a program's content. Iconographic elements are analogous to code comments.
- Piet Mondrian on Wikipedia.
- Piet on David Morgan-Mar's website.
- PietDev, a Piet IDE and debugger by Oscar Rodríguez used in the creation of this program.
- The Piet Assembler, a program by Sergei Lewis which reads text commands and generates Piet code, such as the text output portion of this program.
- Program contains black pixels, which seems like cheating.
- Program is kind of ugly overall.
- Does not seem to work with npiet. Only successfully tested in PietDev.