📖 WIPIVERSE

🔍 Currently registered entries: 104,882건

Whitespace (programming language)

Whitespace is an esoteric programming language developed by Edwin Brady and Chris Morris at the University of Durham. It was released on April 1, 2003, as a tongue-in-cheek response to the increasing complexity and verbosity of modern programming languages.

The language is unique in that it uses only whitespace characters – spaces, tabs, and linefeeds – to represent commands and data. Any other characters are ignored and can be used for comments. This allows Whitespace programs to be easily hidden within the whitespace of code written in other languages, hence its name.

Whitespace operates on a stack-based virtual machine. It uses an instruction set consisting of three main types of instructions, distinguished by the initial character of the command:

  • Space: Stack manipulation (pushing values onto the stack, duplicating values, swapping values, discarding values)
  • Tab: Arithmetic and heap access (arithmetic operations such as addition, subtraction, multiplication, division, and modulo; storing and retrieving values from the heap)
  • Linefeed: Control flow (label definition, function calls, jumps, conditional jumps, program exit)

Because the language is based entirely on whitespace, writing and reading Whitespace code is extremely difficult for humans. Dedicated interpreters and compilers are required to execute Whitespace programs. The obscurity of the language makes it a popular choice for code obfuscation and a demonstration of the limits of programming language design. While not intended for practical use, Whitespace serves as an interesting exploration of computational theory and a parody of software development trends.