Timeline of esoteric programming languages

From Esolang
Jump to: navigation, search

What follows is an attempt at a timeline of esoteric programming languages. Any notable languages should be included. Languages that have not yet garnered much attention are omitted.

1964

Corrado Böhm publishes a paper describing P′′.png. While not intended as an esoteric programming language, it would later become an item of interest to esoteric programmers upon the revelation that it is almost identical to Brainfuck, invented 29 years later.

1972

Donald R. Woods and James M. Lyon come up with INTERCAL, a programming language designed to have nothing in common with existing programming languages of the day. INTERCAL is considered the first true esoteric programming language.

1991

Biota, presumably the first two-dimensional esolang, is invented by Ward Cunningham and sold for a net profit.

1993

FALSE, a stack language with a 1024-byte compiler, is invented by Wouter van Oortmerssen. Later on, Urban Müller invents the Turing-tarpit Brainfuck, outdoing False with only eight instructions and a compiler just over 200 bytes.

Chris Pressey invents Befunge during this year. He and many other esoteric programmers, unaware of Biota, consider Befunge the first two-dimensional programming language. The version of Befunge created this year is now called Befunge-93. Due to its limitation of 80x25 for code size, it is not Turing-complete.

1994

Chris Pressey comes up with SMETANA, in which programs are series of steps like "Go to step n." and "Swap step a with step b." Being fairly useless, SMETANA is not given much attention.

Kvikkalkul, allegedly developed and used by the Swedish Navy in the 1950s, is made known to the public through anonymous postings on alt.folklore.computers.

1997

The Befunge-97 variant of Befunge is created. This standard turns out to be a turkey and is not widely implemented.

Chris Pressey, Ben Olmstead, and John Colagioia invent Wierd, a two-dimensional language based on wires, which represents instructions using changes in direction in the wires. Some controversy exists as to whether wires should be allowed to cross in Wierd.

1998

Funge-98, a generalization of Befunge, is standardized. The specification allows for funges in other dimensions: Unefunge in 1D, Trefunge in 3D, etc. Unlike Befunge-93, the new Befunge created by Funge-98 is Turing-complete.

Ben Olmstead invents Malbolge, the first recorded instance of a programming language designed to be as difficult as possible to program in. Worried that Malbolge may in fact be too hard, he goes on to invent Dis.

1999

Unlambda is created, the first esoteric functional language.

2000

John Colagioia invents Thue, the first prominent example of a string-rewriting language (although not the first to exist).

Jeffry Johnston describes BitChanger, the first one-bit version of Brainfuck, with a total of four instructions.

2002

Nikita Ayzikovsky comes up with Smallfuck, a simplified Brainfuck with bounded storage and no IO. Although the language is not especially powerful, it can be compiled into SMETANA, a language previously thought to be entirely useless.

2003

Edwin Brady and Chris Morris invent Whitespace, which achieves some notoriety after being posted to the front page of Slashdot on April 1st.

Kipple is invented, and turns out to be the first esolang to rise to prominence in which the use of stacks is a defining characteristic.

In August, Francis Rogers invents PATH, a two-dimensional language bearing a strong instruction-set resemblance to Brainfuck. In September, Daniel Brockman refines the idea with SNUSP, a more orthogonal variant.

2005

Renewed interest in the wire-crossing problem, previously considered with regards to the languages Befunge and Wierd, brings about the two-dimensional languages Beturing, in which wires cannot cross, and Archway2, to which Brainfuck programs can be converted without crossing wires.

Chris Pressey writes a compiler that turns Smallfuck programs into lookup tables, illustrating that Smallfuck is, at best, a way to compress lookup tables, and SMETANA, being wordier, is not even that.

Martin Gasperowicz invents SADOL and implements it's interpreter with Adam Sawicki.

Gregor Richards creates ORK which is considered to be the first object-oriented esolang.

2014

Alacrity is finally implemented. The project was started in 2006, and has roots in projects that go back in the author's life as far as 1991, and arguably 1984.

2023

The TwoDucks programming language is created.

2038

On January 19th, Unix time_t rolls over and a lot of things break. Many languages will be lost if unaltered.

The heat death of the universe

Feather is completed, and travels back in time before the Big Bang to set the events that lead to the creation of the universe in motion.

Outside of Time

The esoteric programming language ~ATH paradoxically has no true point of origin or destruction. It is a constant in every universe destined for intelligent life.

See also