Blank

Blank is a stack-based esoteric programming language developed by Andrew Turley in 1997. Blank programs use single-character instructions contained within braces and numbers contained within brackets. Each number is an 'instruction' in the sense that 'executing' a number means to push it onto the stack.

Blank was heavily influenced by Befunge-93, except that it is one-dimensional; thus it is sometimes informally referred to as Unefunge-93.

Language overview
A program in Blank is a sequence of data, represented as, and instructions, represented as  , where n is any natural number, and c is one of the one-character instructions listed below. During execution, each data encountered is pushed on top of the stack, each instruction is executed, and when the end of the program is reached, execution continues loops over to the beginning.

The main data structure is a stack, which can hold numeric values. There is also an auxiliary stack, called the program stack. Blank programs can also access and modify their own source code, which can thus be considered a circular tape. According to the reference implementation, all values are bound to the range [- 2 ^ 31, 2 ^ 31 - 1].

Input/output
In the reference implementation:
 * ,,  ,  , and   are used for interactive I/O via standard input and output;
 * and  are used to read from an input file and write to an output file, both specified before execution.

Control flow
Those instructions can access the program stack. In the descriptions below, "the main stack" refers to the main stack, while "the program stack" refers to the program stack.

External resources

 * , including the reference implementation and a guide to the Blank programming language