Skip to content

A visual journey through stack-based superexponential recursion 🎨

License

Notifications You must be signed in to change notification settings

ItsNickBarry/ackermann-piet

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 

Repository files navigation

The Ackermann function, in Piet

This repository contains an implementation of the Ackermann function in the Piet language.

The code is a visual experience.

The Ackermann Function

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.

Links

Piet

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.

Links

  • 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.

Known Issues

  • 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.

About

A visual journey through stack-based superexponential recursion 🎨

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published