Timeline of esoteric programming languages
- Not to be confused with History (programming language).
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 describes , a language for simplifying the task of programming Turing machines. 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.
1968-1970
John Conway discovers Game of Life, a two-dimensional cellular automaton with many emergent behaviors.
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.
1982
John Conway proves that Game of Life is Turing-complete, settling any foundational doubts about its suitability as a programming environment.
1986
Chris Langton publishes "ant", known as Langton's ant, a two-dimensional cellular automaton with many emergent behaviors.
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.
Paul Rendell builds a Turing machine in Conway's Game of Life, making it usable for general-purpose programming by allowing many programming languages to be compiled to it.
Gajardo, Moreira, & Goles prove that Langton's ant is Turing-complete, settling any foundational doubts about its suitability as a programming environment.
2001
Cliff L. Biffle invents HQ9+, which only has 4 useless instructions.
Chris Barker creates Iota and Jot, two sister-languages based on combinatory logic.
David Morgan-Mar creates Piet, a language in which programs look like abstract paintings and which uses image files as code.
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.
By this time, Matthew Cook had completed his proof of the universality of elementary (1-dimensional) cellular automata by implementing Cyclic tag system in Rule 110.
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.
On the same year, Gregor Richards created Glass with heavy object-orientation.
On 6th April, the Esolang Wiki is created.
2006
Tanner Swett came up with ///, an extremely simplified, self-modifying string-rewriting language.
Jonathan Todd Skinner made Deadfish, a very odd interpreted language.
2007
Chris Pressey invented Emmental, a self-modifying esoteric programming language.
User:ais523's proof of the Turing completeness of Wolfram's 2-state 3-symbol Turing machine is accepted by Wolfram as correct.
LOLCODE took the internet by storm by dint of being memetic.
2011
User:Timwi created Funciton, a two-dimensional, minimalistic language.
2023
In the last 31 years (1993-2023), 4412 esolangs (recorded on this wiki) have been created. In average, an esolang is created about once every 2.5 days.
Note: Until 14th Dec. 2023
2038
On January 19th, Unix's time_t rolls over (In the 32-bit OS's, the 64-bit OS's is enough to last until the end of humanity. The 128-bit OS is even more can be used for a longer period of time, and it can hang up to that thing.) and a lot of things break. Many languages will be lost if unaltered.
On February 32nd, nothing happens as February 32nd will not exist until the year 5032, when 20 different leap years from different dimensions intersect and make February the longest month in recorded history, lasting 48 days.
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.