Content deleted Content added
Mitch Ames (talk | contribs) →Whitespace: +link |
explicitly listed unqualified examples |
||
Line 1:
{{Short description|Experimental or artistic programming language}}
An '''esoteric programming language''' (sometimes shortened to '''esolang''') or '''weird language'''{{r|":2"|page=5}} is a [[programming language]] designed to test the boundaries of computer programming language design, as a [[proof of concept]], as [[software art]], as a hacking interface to another language (particularly [[functional programming]] or [[procedural programming]] languages), or as a [[joke]]. The use of the word ''[[wiktionary:esoteric|esoteric]]'' distinguishes them from languages that working developers use to write software. The creators of most esolangs do not intend them to be used for mainstream programming, although some esoteric features, such as live [[Data and information visualization|visualization]] of code,<ref>{{cite conference |last1=McLean |first1=A. |last2=Griffiths |first2=D. |last3=Collins |first3=N. |last4=Wiggins |first4=G. |date=2010 |title=Visualisation of Live Code |conference=Electronic Visualisation and the Arts 2010 |___location=London |url=https://www.researchgate.net/publication/228575469}}</ref> have inspired practical applications in the arts. Such languages are often popular among [[Hacker culture|hackers]] and hobbyists.{{Citation needed|date=July 2021}}
Usability is rarely a goal for designers of esoteric programming languages; often their design leads to quite the opposite. Their usual aim is to remove or replace conventional language features while still maintaining a language that is [[Turing completeness|Turing-complete]], or even one for which the [[Computability theory|computational class]] is unknown.
Line 6:
==History==
[[File:Hello World INTERCAL.png|thumb|"[["Hello, World!" program|Hello World!]]" program in INTERCAL]]
The earliest, and still the canonical example of an esoteric programming language, is [[INTERCAL]],<ref name="software-studies">{{Cite book |first=Matthew |last=Fuller |title=Software studies: a lexicon |date=2008 |publisher=MIT Press |isbn=978-0-262-06274-9 |oclc=1156851190 |url=https://mitpress.mit.edu/9780262062749/software-studies/}}</ref> designed in 1972 by [[Don Woods (programmer)|Don Woods]] and James M. Lyon, who said that their intention was to create a programming language unlike any with which they were familiar
For many years, INTERCAL was represented only by paper copies of the INTERCAL manual. Its revival in 1990 as an implementation in [[C (programming language)|C]]{{r|":2"|page=6}} under [[Unix]] stimulated a wave of interest in the intentional design of esoteric computer languages.
{{anchor|FALSE}}
|