Talk:Esoteric programming language

From Esolang
Jump to navigation Jump to search

Which languages are considered esoteric?

This article states What is possibly most indicative is that the language was not designed for a particularly "serious" or "productive" purpose, as mainstream languages are, and I think that is a good clarification. But how about the Arbol programming language (from the Wayback Machine; retrieved on 12 December 2007)? It definately has an esoteric feel to me, but it is also clearly designed for a "serious" purpose. Should it be included in the wiki (I think it should) --Rune 18:27, 25 Feb 2006 (GMT)

Hmmm, it's pretty hard to define whether something is an esolang or not. That is a good definition, though. It's also worth mentioning what the author him/herself says; does he/she think the language as an esolang. And, of course the fact how easy the language is to use; how much effort it does take to do something quite simple. This language in question looks quite obscure to me (but that is perhaps mostly because I have no knowledge (or interest) in functional programming languages). The author seems to know of esolangs, and has mentioned the language being inspired by some of them such as Unlambda, Lazy K, Joy, Iota, and Zot. The example section seems 'esoteric' as well, having a quine as an example, which is not that usual in the "mainstream language" specifications. I guess this could be defined as esolang, as well. --Keymaker 18:41, 25 Feb 2006 (GMT)
You must mean Jot, not Joy.

I think we should err on the side of inclusivity. I have also floated the idea of covering serious languages on this wiki. There are pages saying that such-and-such was inspired by {Forth,Lisp,Haskell,...} and it seems silly that we have nothing to say about these. --Graue 01:03, 28 Feb 2006 (GMT)

Agreed. I have also thought about making a LISP article as there are several references to it (and other "real" languages), and as long as they don't appear in the language list I think that would be a good idea. I recently made links to LISP and some other serious languages I mentioned in an article, but they were edited away, so I guess not everyone agrees they should be here. --Rune 11:37, 28 Feb 2006 (GMT)
Maybe the articles on real languages should start with something like This articles deals with [Language] as it relates to esoteric programming. For more general information, see the Wikipedia article on this subject. --Safalra 12:20, 1 Mar 2006 (GMT)
That is an excellent idea Safalra, I second. --Keymaker 09:14, 2 Mar 2006 (GMT)
I've created Template:Serious to use if no-one objects to the idea. To use it just include {{serious}} at the start of the relevant page. --Safalra 15:26, 2 Mar 2006 (GMT)
I'd just like to point out that in the nearly five years that Template:Serious has existed, it's never been used in an article. If I had to guess, I would say it's probably that no one wants to put in the effort of documenting languages here that are already well-documented elsewhere. If (for example) you want to refer to LISP in an article here, it's effective enough to just include an external link to (say) the LISP article on Wikipedia. --Chris Pressey 23:58, 25 February 2011 (UTC)

Maybe add section for semi-esoteric programming language, as well as other things that use ideas from these esoteric programming languages. What about GASM? GASM is a Generalized Assembler. You can use it if you don't have assembly language for certain systems or emulators (such as QGA) and you can also use Brainfuck to write macros with it. For example, if you want all the text strings in reverse, then you can do:

#0"Hello World!"/text

Terminology misnomer?

I think that maybe "Impractical Programming Languages," "Unproductive Programming Languages," or "Non-serious Programming Languages" would be a better label for the set of non-serious, non-productive programming languages... rather than limiting the term "Esoteric Programming Languages" to be only non-serious languages? That is to say, all "Non-serious Programming Languages" are included within the set of "Esoteric Programming Languages" (maybe... maybe not)? —Brian Krent 03:04, 14 February 2011 (EST)

The issue is, the boundary between esoteric and non-esoteric is often hard to draw. Funge-98, for instance, is entirely usable for programming, has good library support, etc.; and yet most people pretty firmly consider it an esolang. (It's not hard to imagine a "serious" language based on almost the same principles, though; replacing the single-character commands with a flowchart would almost do, and ironically make the language much more verbose and slightly less powerful at the same time.) I suspect we're stuck with the name now no matter what happens. --ais523 12:23, 14 February 2011 (UTC)
I consider "esoteric" at this point to be a "term of art". I didn't put a lot of thought into choosing it for the title of the "Esoteric Topics in Computer Programming" page. I was borrowing its meaning as it is commonly understood by technical people (which isn't really its full meaning; I suppose it's kind of like the word "guru" that way. Its meaning seems truncated to "obscure", maybe with some connotation that despite being obscure it can still be critically important.) I did not, either, intend for that page to survey all topics that were thinkably describable as esoteric, just ones that were (quite frankly) interesting to me, as someone who was interested in programming language design and theory of computation. To be quite pedantic, it should probably have been "Selected Esoteric Topics..."
But since then, the term has basically been adopted by a community (albeit an extremely loose-knit one) and has pretty much come to be a label for the kind of programming languages that the members of this community deal with. This basis, plus the diversity of the community, makes finding a single definition of the term difficult. (I have a pretty good intuitive idea of the qualities I personally think make a language esoteric in our sense, but I'm afraid I would not be able to delineate them briefly here.) I often prefer the word "esolang" to "esoteric", because, as a neologism, it's more clearly a term of art, and easier to keep separate from other possible meanings. --Chris Pressey 23:49, 25 February 2011 (UTC)
[Pretend my comment here is actually here. —ehird 04:51, 26 February 2011 (UTC)]
Let me know if I've misrepresented what you are trying to say (transplanting from one context to another introduces the danger of accidentally creating a strawman) --
First of all, I don't think anyone seriously objects to the idea that there may be articles on this wiki that are about things that are not esolangs, so let's put that aside.
Apart from that, one of your positions seems to be: there is little (or no?) point in coming up with definitions of "what is an esolang". I agree insofar as I would not like to see the community have a prescriptive, set definition by which the world is divided into esolangs and non-esolangs. I do not agree that we should avoid talking and thinking about the criteria by which we classify languages as esolangs or not; I think that can only lead to complete indiscrimination ("everything's an esolang") or a form of mob rule ("i know one when i see one") or a cult of personality ("mr. big shot esolang designer says that is [not] an esolang, so it must [not] be one".) I do agree that "if the author says it is an esolang, it's an esolang" is a good starting point, but I believe it is very much a starting point; it says nothing about the character of the object to which the label is being applied. There is certainly some reason that you or I thinks that x should be called an esolang and y shouldn't, even when the authors of x and y have never heard of esolangs.
Your other position seems to be: a language can be both "esoteric" and "serious". Well, the way the "elders" used the word "serious" in the conversation above, seems to me to be clearly for the purpose of describing those languages that are uncontroversially not esoteric -- so I assume you must have a slightly different meaning of "serious" in mind. We might have to agree on a definition of "serious" first in order to constructively discuss it.
Perhaps I can start with this, though: I see the esolang community as primarily a cultural phenomenon; the activities it engages in are much more like sport or art, than those that professional technical communities undertake. There is nothing inherent in being an esolang which prevents a language from being used as a basis for a research project or a production tool. (Indeed, several basic chemical elements were first discovered by alchemists, and it was hams who first developed the potential of shortwave.) However, if you are designing languages and calling them esolangs in the hopes of advancing the state of the art and/or building something which makes life easier or more profitable -- well, you may have missed the point. That's just not most participants' goal here, from what I see. --Chris Pressey 16:45, 10 March 2011 (UTC)


Why does Mediawiki think that a template called "3" is being used on this page? Chris Pressey (talk) 12:41, 18 October 2012 (UTC)

I suspect some temporary glitch related to the Wayback template, which uses {{{3}}} internally. Attempting to edit the page makes it disappear in preview, even if you don't touch the actual template part. (I didn't save.) --Ørjan (talk) 14:04, 18 October 2012 (UTC)