Esolang:Featured languages

From Esolang
Jump to navigation Jump to search

Featured languages are showcased on the main page. Languages are proposed by users of this wiki, and selected to be featured by an administrator; the previous featured language section is then archived on this page. All featured languages are members of Category:Featured languages. To find out more information about the selection process, or to propose a language yourself, see Esolang:Featured languages/Candidates.

Currently featured language

Thue is an esoteric programming language based around the idea of a "semi-Thue system": a system which specifies strings that can be rewritten to certain other strings; a program is simply a list of search strings, and possible replacements for them. As a nondeterministic language, a program has the potential to halt if there is some way to reach an end state via applying replacements, even if rules such as "always apply the first replacement" would lead to an infinite loop. No data storage is necessary, apart from a single string that holds the entire state of the running program, although this often causes programs to run slowly due to delays in communicating information from one part of the string to another. (more…)


January–March 2019

Funciton (pronounced: /ˈfʌŋkɪtɒn/) is a two-dimensional, minimalistic, declarative esoteric programming language invented by User:Timwi, in which code consists of dataflow diagrams in the style of Unicode box art. The values flowing through the diagrams are all arbitrary-size integers, but can be interpreted as strings for I/O, as IDs for lambda expressions, or as any other data structure that can be built from these. There are only a handful of primitive instructions: NAND, less-than, shift-left, function invocation and lambda expressions. An extensive library written in the language itself provides many useful basic and higher-order functions, including for arithmetic, strings, (strict) lists and lazy sequences. (more…)

October 2013–January 2019

One of the best-known esoteric programming languages, brainfuck boils down the concept of an imperative language to just eight commands, using an infinite tape to store data rather than separate variables, and boiling down control flow to nothing but while loops. Although the language is famously hard to read, consisting of nothing but punctuation marks, it is perhaps one of the best-studied esolangs in terms of writing programs, with many algorithms having been developed for development in it. It is particularly easy to implement as programming languages go, with its imperative paradigm reminiscent of most more widely used languages, making brainfuck a common first language for new esoprogrammers, and leading to the creation of a vast number of derivatives. (more…)

April–September 2013

Deadfish is a very odd interpreted programming language created by Jonathan Todd Skinner. Deadfish has a way to output things but it has no way to input them! It has only a few commands, only four in total. It is also case-sensitive, and can deal only with integer values when adding or subtracting, however once squared this number increases greatly! As you've probably assumed deadfish was created in less then a hour, and can be very useful in creating highly interactive programs[sic]. Deadfish was originally going to be called fishheads as programming in this language is like eating raw fish heads. However, due to the limiting features of the language, programming in this language became like eating (and having to smell) dead, rotting fish heads, an experience not often generally considered pleasurable. (more…)

February–March 2013

Emmental is an esoteric programming language invented by Chris Pressey, in which every command can be redefined via giving it a new definition, specified as an Emmental program. Because Emmental has no other method of flow control, redefining commands is required to even perform simple tasks such as writing loops (most simply via redefining a command to execute itself). This was recently proven to be sufficient power for the language to be Turing-complete. (more…)

November 2012–January 2013

Malbolge is an esoteric programming language invented by Ben Olmstead, intended specifically to be as hard to program in as possible (unlike most esoteric languages, which are typically difficult to program in only as a side effect of their main goals). This is mostly achieved via having commands change into other commands when executed, together with the only control flow being a computed jump. When it was first released, computer search was the only known way to write programs in it, although it has since been cryptanalysed, with useful loops and a 99 bottles of beer program being developed. (more…)

May–October 2012

Glass is a stack-based esoteric programming language invented by Gregor Richards. It is an object-oriented language, including classes, methods and instances, and encourages the use of these features by encapsulating most typically-fundamental features, such as arithmetic, into methods of classes. The result requires extensive juggling of a main stack, similar to Forth, combined with heavy object-orientation. No other language that the author knows of is implemented like this, because it would be idiotic. (more…)

March–April 2012

/// is a minimal esoteric programming language invented by User:Ihope127 in which all computation is performed by string substitution. The only operation is to replace a fixed source string with a fixed replacement string, using the syntax /source/replacement/. Despite this, it still manages to be Turing-complete, as proved by Ørjan Johansen in 2009 with the construction of a Bitwise Cyclic Tag interpreter in the language, the last in a series of successively more elaborate programs. (more…)