|
Argh! and Aargh! are Befunge-like esoteric programming languages (i.e. languages deliberately designed to be strange, with utility not an objective). Befunge is a stack-based esoteric programming language which differs from conventional languages in that programs are arranged on a two-dimensional grid. ...
Among some hackers and hobbyists, an esoteric programming language is a programming language designed as a test of the boundaries of computer programming language design, as a proof of concept, or as joke, and not with the intention of being adopted for real-world programming. ...
Argh! and Aargh! share a two dimensional layout. Both are limited to 80 columns wide but while Argh! is also limited to 40 rows, Aargh! has unlimited number of rows. Each command is a single character and occupies one cell of the grid; a cell can alternately contain a value. The language also supports a stack of theoretically unbounded size. There are 27 documented commands. The following program prints out "Hello, Wikipedia!": j Wikipedia! lpppppppPPPPPPPPPPq Hello, Explanation of the above program: execution begins with the j in the top row leftmost column, which indicates the starting direction of execution is down. The next command executed is the l which means process commands to the right. Each of 'p's indicates that the value below it should be printed; each P that the value above it should be printed. The q (for quit) command marks the end of the program. A program that tries to execute a value that is not a command, or that tries to execute outside the grid, emits the language's standard error message, Argh! or Aargh! as appropriate, and terminates.
External links - Argh! Homepage (in German)
- Argh! and Aargh! Language Specification (in English)
- freshmeat.net: Project details for Argh!
|