Whitespace (programming language)
From Wikipedia, the free encyclopedia
Whitespace is an esoteric programming language developed by Edwin Brady and Chris Morris at the University of Durham. It was released on 1 April 2003 (April Fool's Day). Contrary to most languages, which often ignore most whitespace characters, the Whitespace interpreter ignores any non-whitespace characters. Only spaces, tabs and newlines are considered syntax. An interesting consequence of this property is that a Whitespace program can easily be contained within the whitespace characters of another language, making the same code a polyglot.
The language itself is an imperative stack-based language. The virtual machine on which programs run has a stack and a heap. The programmer is free to push arbitrary width integers onto the stack (currently there is no implementation of floating point numbers). The user can also access the heap as a permanent store for variables and data structures.
Whitespace has been ironically called a great language for secretive programs. Important code can be printed onto plain sheets of white paper and stored safely without worry of discovery by inspection (or of ever being recovered by anyone, including the intended recipient).
[edit] See also
- Brainfuck, another esoteric computer programming language.
- Polyglot, a program valid in more than one language.
- Steganography
[edit] External links
- Whitespace homepage
- Release announcement on Slashdot
- Acme::Bleach A Perl module that rewrites the body of your module to a whitespace-only encoding ("for really clean programs").