Befunge Befunge allows the instruction pointer to roam in multiple dimensions through the code. For example, the following program displays
"Hello World" by pushing the characters in reverse order onto the stack, then printing the characters in a loop which circulates clockwise through the instructions , , , , , and . {{Syntax highlight| "dlroW olleH">:v ^,_@ There are many versions of Befunge, the most common being Befunge-93, named as such because of its release year.
Binary lambda calculus Binary lambda calculus is designed from an
algorithmic information theory perspective to allow for the densest possible code with the most minimal means, featuring a 29-byte self interpreter, a 21-byte prime number sieve, and a 112-byte Brainfuck interpreter.
brainfuck Brainfuck is designed for extreme minimalism and leads to obfuscated code, with programs containing only eight distinct characters. The following program outputs "Hello, world!": ++++++++++[>+++++++>++++++++++>+++++.>+.+++++++ ..+++.>++..+++.------.--------.>+. All characters other than are ignored.
Chef Chef is a
stack-oriented programming language created by
David Morgan-Mar, designed to make programs look like
cooking recipes. Programs consist of a title, a list of variables and their data values, and a list of stack manipulation instructions. A joking design principle states that "program recipes should not only generate valid output, but be easy to prepare and delicious", and Morgan-Mar notes that an example
"Hello, World!" program with 101 eggs and oil would produce "a lot of food for one person".
FRACTRAN A
FRACTRAN program is an ordered list of positive fractions together with an initial positive integer input n. The program is run by multiplying the integer n by the first fraction f in the list for which nf is an integer. The integer n is then replaced by nf and the rule is repeated. If no fraction in the list produces an integer when multiplied by n, the program halts. FRACTRAN was invented by mathematician
John Conway.
INTERCAL INTERCAL, short for "Compiler Language With No Pronounceable Acronym", was created in 1972 as a parody to satirize aspects of the various programming languages at the time. It has been used in a number of
cross-site scripting (XSS) attacks on websites such as
eBay due to its ability to evade cross-site scripting detection filters.
LOLCODE LOLCODE is designed to resemble the speech of
lolcats. The following is the "Hello World" example: HAI CAN HAS STDIO? VISIBLE "HAI WORLD!" KTHXBYE While the
semantics of LOLCODE is not unusual, its syntax has been described as a
linguistic phenomenon, representing an unusual example of
informal speech and
internet slang in programming.
Malbolge Malbolge (named after the
8th circle of Hell) was designed to be the most difficult and esoteric programming language. Among other features, code is self-modifying by design and the effect of an instruction depends on its address in memory.
Piet Piet is a language designed by
David Morgan-Mar, whose programs are
bitmaps that look like
abstract art. The execution is guided by a "pointer" that moves around the image, from one continuous coloured region to the next. Procedures are carried out when the pointer exits a region. There are 20 colours for which behaviour is specified: 18 "colourful" colours, which are ordered by a 6-step hue cycle and a 3-step brightness cycle; and black and white, which are not ordered. When exiting a "colourful" colour and entering another one, the performed procedure is determined by the number of steps of change in hue and brightness. Black cannot be entered; when the pointer tries to enter a black region, the rules of choosing the next block are changed instead. If all possible rules are tried, the program terminates. Regions outside the borders of the image are also treated as black. White does not perform operations, but allows the pointer to "pass through". The behaviour of colours other than the 20 specified is left to the compiler or interpreter. Piet was named after the Dutch painter
Piet Mondrian. The original intended name,
Mondrian, was already taken by
an open-source statistical data-visualization system.
Velato Velato was created by Daniel Temkin in 2009 and uses
MIDI files as its source code. Programs are composed of musical notes, with each instruction determined by the interval between successive notes relative to a chosen root note. This design allows valid Velato code to double as a musical composition.
Whitespace with syntax highlighting
Whitespace uses only
ASCII whitespace characters (space U+0020, tab U+0009, and linefeed U+000A), ignoring all other characters, which can therefore be used for comments. This is the reverse of many traditional languages, which do not distinguish between different whitespace characters, treating tab and space the same. It also allows Whitespace programs to be hidden in the source code of programs in languages like
C. == Cultural context ==