Esolang talk:Categorization
From Esolang
Please discuss categorization of the Esolang wiki here.
[edit] Category: Languages
Language articles should not have Category:Languages. Everything in Category:Implemented, Category:Unimplemented, Category:Stack-based, Category:Cell-based, etc. is a language. Those should be subcategories of languages. --Graue 17:40, 5 Jun 2005 (GMT)
- And shouldn't there be by-topic subcategories of Category:Languages like Category:Languages by storage type, in which Category:Cell-based and Category:Stack-based could be categorized? --Puzzlet Chung 02:10, 6 Jun 2005 (GMT)
- No, I think cell-based, stack-based etc should be parts of the languages category directly. --Graue 06:10, 6 Jun 2005 (GMT)
- My objection is that the ones in a subcategory aren't automatically shown in the parent category, so Category:Languages is not an extensive list. I'd like to keep such an automatic list, similar to the Wikipedia category ([1]) and use the main list to add short descriptions of each language. --Pgimeno 23:46, 10 Jun 2005 (GMT)
- Okay. I seem to have given in without realizing it. I don't mind the languages list that much, but if someone does come up with a better idea i'll be quick to consider it. --Graue 02:47, 11 Jun 2005 (GMT)
- And those characteristic categories are still going to be subcategories of Category:Languages, aren't they? After all, browsing languages by characteristics from Esolang:Categorization (which is a project page) is ridiculous. --Puzzlet Chung 14:37, 15 Jun 2005 (GMT)
Please avoid adding a partial list of categories to an article. It's easy to find pages that have not been given a category list by consulting Special:Uncategorizedpages but that magic is gone when any category is added. Or is there a way to find out the articles that do not belong to a given list of categories? Like, those articles which do not belong to either Category:Languages or Category:Computational models. That would be ideal but I don't think it's possible. --pgimeno 10:13, 11 Jun 2005 (GMT)
- Just fix it if you find it. The whole idea of a wiki is that it's small compared to the line-of-sight of its editors. --Graue 12:15, 11 Jun 2005 (GMT)
[edit] Computational models categories
Shouldn't everything listed under Category:Computational_models be available as a choice for Computational class? In particular, I was looking for a list of languages that are particle automata. --Calamari 06:19, 13 Jun 2005 (GMT)
- It's kind of a pity that MediaWiki makes a distinction between articles and categories (instead of, say, just having some sort of general "can-be-classified-under" association between articles.) What if I want to see a list of all languages designed by Gerson Kurz, for instance...?
- I guess I wouldn't mind making some sort of compromise for computational models, though. I think what we end up with is either an article plus a category (where the category says "see the article for more info",) or an article which just redirects to a category (with the real article "embedded" in the category.) --Chris Pressey 21:30, 5 Jul 2005 (GMT)
[edit] Authors
We should have a Category:Persons or something like that. --Graue 21:17, 14 Jun 2005 (GMT)
- Yes, we should have a category. I prefer the term designer to author, myself. But persons is more general (maybe too general). Are there any persons that should have an article here that are not esolang creators? --Rune 21:49, 14 Jun 2005 (GMT)
- Possibly. I don't know of any esolangs invented by Daniel Cristofani, but he is notable for his Brainfuck work. --Graue 01:16, 16 Jun 2005 (GMT)
- Good point. I kind of feel there should be a category for authors/designers, but two categories might be impractical. If only sub category members were included in their super category listings... Then we could have authors as a subcat of persons. --Rune 01:41, 16 Jun 2005 (GMT)
- We now have several pages on people... does anyone seriously object to the imminent creation of a 'People' category? --Chris Pressey 17:47, 5 Jul 2005 (GMT)
- I think that is a good idea. --Rune 13:02, 8 Jul 2005 (GMT)
[edit] Proposed Category:Uncategorized Languages
This new category would be for languages that have not yet been properly categorized, so that they become visible in a list for future categorization. --Calamari 00:09, 15 Jun 2005 (GMT)
- I don't see the need for this. Why not just add proper categories to the article instead of this one? --Rune 00:34, 15 Jun 2005 (GMT)
- That would be ideal, if one person had no life. It takes time to properly evaluate a language and see which categories it fits into, and the search is disorganized. With this category, we can quickly know which pages still need to be categorized, rather than having to click each one in turn and get lucky. --calamari
- I think it is unrealistic that a language will be completely categorized in one go. When I categorize a language I just skim the article, and perhaps the spec, and then go through the Esolang:Categorization list and add the ones I think fit. This does not take much time. It is not 100% accurate, but that's not a problem IMHO. --Rune 01:48, 16 Jun 2005 (GMT)
- The already is a way of finding out which languages have yet to be categorised through the special page Special:Uncategorizedpages. --Safalra 19:31, 8 Oct 2005 (GMT)
[edit] Proposed category: Data structures
I'd like to make a category for data structures so that stack, queue, tape and probably someday others like graph all have somewhere to live. --Chris Pressey 17:56, 5 Jul 2005 (GMT)
- Agreed. That is a good candidate for a category. --Rune 13:03, 8 Jul 2005 (GMT)
- Now there is a programming language which uses graphs, as in Cvlemar. --Zzo38 16:24, 4 Oct 2005 (GMT)
[edit] Proposed category: Concepts
I'd like to make a category for "concepts", so that Turing tarpit, Turing-complete, wimpmode, and other related but hard-to-categorize stuff have somewhere to live. --Chris Pressey 18:27, 5 Jul 2005 (GMT)
[edit] Other Categories
Where would Category:CJK fit in this list?
- Source format? --Rune
[edit] Symbol independent languages
I think we should have a category for these languages, but I'm not sure what it should be called. Symbol independent or Pattern based are two possibilities.
So far I know of the following languages that fit in this category (but there are probably more): Beatnik, Udage, Trigger, Glypho and possibly l33t. --Rune 01:13, 7 Oct 2005 (GMT)
- I agree, Udage and Trigger clearly are symbol independent, not sure about the others --Aardwolf 01:20, 7 Oct 2005 (GMT)
- Well, I agree too. But what is THE symbol if we use "Symbol independent languages"? For example, symbol of Beatnik could be a Scrabble score of the word -- so it cannot be symbol independent language. I think Udage, Trigger and Glypho is symbol independent, but Beatnik and l33t is not. --Tokigun 19:59, 7 Oct 2005 (GMT)
Seems like "symbol independent" is a rather tenuous concept to apply to anything other than a straightforward textual language. I believe that the way Tokigun has sliced it is the most meaningful distinction, whether or not "symbol independent" actually describes that distinction. I would suggest "pattern-based" with the understanding that it refers to languages in which differences, patterns, or relations of adjacent symbols are treated themselves as symbols. Thus, for example, Fugue is pattern-based; Beatnik and l33t are not; Mycelium and Braincopter are not, but a graphical language based on the difference between adjacent pixels would be, as would one based on patterns of adjacent pixels. (This is an attempt to extend the concept to non-textual languages while retaining its integrity.) --Graue 20:47, 7 Oct 2005 (GMT)
- I agree that Beatnik can be said to be dependent on symbols (word score). But this also applies to Trigger, which is dependent on the 256 ASCII characters, unlike Udage and Glypho. In my opinion Trigger is even less symbol independent than Beatnik because in order to output say the character T you must use the code TTT, while with Beatnik you can accomplish this in a lot of different ways (with different characters).
- However I think that in order for this category to not be too narrow we should include languages like Trigger and Beatnik. They are both based on patterns, though they are not symbol independent. --Rune 23:48, 20 Oct 2005 (GMT)
- That's an interesting point you bring up about Trigger's mapping of each byte to the character thus represented. Still, Trigger is pattern-based, per my definition just above. Beatnik does not seem pattern-based to me. It essentially uses a list of numbers and has a preprocessor that turns letter strings into numbers based on Scrabble word score -- not a pattern, but a mapping of particular symbols and values. I don't see any way that patterns are involved in Beatnik programming. This, combined with the fact that Trigger intuitively (to me) belongs with Udage and Glypho but Beatnik does not, makes me think that a "pattern-based" category, as defined above, is the best idea here. --Graue 01:30, 21 Oct 2005 (GMT)
- Well, it seems we have a consensus to name the category "pattern-based" at least. You have a point that Beatnik is not really based on patterns, so I guess it should be excluded. You also mention Fugue as pattern-based. I don't see how that qualifies. In Fugue each instruction maps directly to a certain interval, which is just another kind of symbol... --Rune 13:15, 21 Oct 2005 (GMT)
- Fugue is based on differences of adjacent symbols. See my definition above. --Graue 13:46, 21 Oct 2005 (GMT)
- Hmmm, yes. You have me convinced. All these musical terms in the Fugue spec confuses me :) --Rune 14:06, 21 Oct 2005 (GMT)
OK, I've added Category:Pattern-based to the Categorization page. I wasn't sure exactly where to put it, but I put it under Source format. --Rune 14:21, 21 Oct 2005 (GMT)
[edit] Multidimensional languages
In my opinion it would be better to remove two-dimensional language as a sub category of multi-dimensional, and let it be a separate "super"-category. I don't think sub-categories work well. Also there are so many 2-dimensional languages that they definately deserve a proper category of their own. --Rune 23:39, 20 Oct 2005 (GMT)
- I agree, 2D languages should be a category next to multi dimensional and zero dimensional, and the explanation of multi dimensional can then become "languages with more than 2 dimensions" instead of the "languages with more than 1 dimension" it is now. --Aardwolf 00:09, 21 Oct 2005 (GMT)
- A subcategory is a proper category. The only difference from any other category is that it, itself, is categorized.
- You don't think subcategories work well? Why? You are asking to remove the link to the 2D languages category from the multi-dimensional languages category, because that's the only change it makes. What is the advantage in removing that link? It would just make the wiki harder to navigate. --Graue 01:36, 21 Oct 2005 (GMT)
- My main problem with sub-categories is that when you for instance view the multidimensional language category (which is currently including 2d langs) you only get a list of the >2d langs plus a link to the 2d category. I guess what I'm really after is redefining multidimensional to be >2 dimensions... --Rune 13:09, 21 Oct 2005 (GMT)
[edit] Category:Lesser known programming languages
Category:Lesser known programming languages contains only one language, SARTRE, plus the Lesser known programming languages. If no one objects I will delete the category and move the two articles to Category:Joke_languages. --Rune 04:26, 2 Nov 2005 (GMT)
- The category is now gone. --Rune 17:47, 7 Nov 2005 (GMT)
[edit] Category for years
The idea of having categories for each year has been discussed in various places, but as Graue has pointed out it should be discussed on this page. Can people make their opinions clear here so that we can finally settle this issue. For the record, I support the idea of having categories for each year (as subcategories of a 'Years' category). --Safalra 16:53, 7 Nov 2005 (GMT)
- I support it as well. However, I'm not sure how we should handle the years before 1993. Should we only add categories for the years that something actually happened, or should we have a < 1990 category? --Rune 17:50, 7 Nov 2005 (GMT)
- Questions about this category: 1) Can we agree that only languages, not implementations and concepts, go in it? 2) Befunge was revised in 1997 and 1998; can we agree that it still only belongs in the 1993 category? I'm not crazy about the idea, but if 1) and 2) are yes then I could go along with it. Also, I think there ought to be a "Before 1993" category, if the year categories are used, for the few languages that predate the year of False, Brainfuck, and Befunge. --Graue 18:43, 7 Nov 2005 (GMT)
- I totally agree with both 1) and 2). It was always my intention for this to be way to browse languages by year, and cluttering it with other articles would be messy. --Rune 00:43, 8 Nov 2005 (GMT)
- Should we go ahead and put the categories back then? Not many has voiced their opinion, but those that have have been positive, except for Graue which is "not crazy about the idea". I'd wish more people would join the discussion, but it doesn't look like that's going to happen. --Rune 23:27, 13 Nov 2005 (GMT)
- Well, I say "do it". --Ihope127 00:52, 14 Nov 2005 (GMT)
- I support the idea with the provisos in my comment above. --Graue 05:05, 15 Nov 2005 (GMT)
- OK. I'll go ahead then. --Rune 00:29, 16 Nov 2005 (GMT)
I have now restored the year categories from 1993 to 2005, and added a before 1993 category. I've also created a template (based on the ones in wikipedia) for the year categories, which makes it easy to browse through the years. Consequently the contents of each year category should only be {{yearcat}} (unless something particular needs to be said about a certain year, though I can't imagine what). The template doesn't work for the Before 1993 category, so that one has to be edited manually, but someone might come up with a better wording which will allow that one too to be templated. --Rune 01:08, 16 Nov 2005 (GMT)
- I found out how to make the Before 1993 category use the same template, by using parameters, so now only one template needs to be altered to change the looks of the year category pages, and that is Template:Yearcat2. --Rune 04:23, 16 Nov 2005 (GMT)
Hi guys, after a long, necessary hiatus, I have posted a comment regading the rather unpleasant beginnings (well for me anyway) here. That includes a comment on the category creation policy, which I beleive should be more prominently displayed. --Stux 16:19, 9 Feb 2006 (GMT)
[edit] Joke languages
I just removed Category:Languages from CHIQRSX9+, for consistency with (what I thought) was all the others, then realised that some jokes were categorized as languages and some weren't. I think we should have an explicit policy about whether jokes are in Category:Languages or not; my reading of the categorization page implies not, but I don't think I should go ahead with this without collecting more opinions first. I'm going to self-revert this change, pending discussion. --ais523 13:17, 19 May 2006 (UTC)
- I see three possibilities:
- Joke_Languages are considered entirely distinct from Languages.
- Joke_Languages is a subcategory of Languages, the articles are classified as both.
- Joke_languages is a subcategory of Languages, the articles are only listed in the subcategory.
- This ties in with another question: What part of Category:Languages should be in the Language_list? I see from the above discussion that subcategories are not truly inherited. --Ørjan 14:24, 19 May 2006 (UTC)
- This is a difficult topic. It is very easy to categorize HQ9+ as a joke and nothing else. But how about INTERCAL? From reading the spec. it is rather obvious that it was meant as a joke, but that doesn't prevent it from being a popular and useable (sort of) language. The Joke Language List description states that This is a list of languages that are not of any interest except for potential humor value, but that is a rather subjective matter. I think that the original intent was for the Joke language list and the Language list to mutually exclusive, but the problem is (as usual) the grey areas. --Rune 16:28, 19 May 2006 (UTC)
[edit] New catagory?
I was looking through the language list and randomly going to things that looked interesting. The thing is I hate going to external links to find out more about an esoteric languages. That is why I think there should be a catagory or maybe sub catagory that list all the languages that arn't just stubs, that have a command list and information. A user on the #esoteric channel on freenode named kipple suggested that maybe instead of having a new catagory, we could just add something next to the language names on the language list to signify if its a stub or not. Well thats all for now!
Poiuyqwert 21:36, 22 May 2006 (UTC)
- I'm kipple from #esoteric, and I think it is a good idea to somehow indicate which articles contain sufficient information to actually understand how the language works. I'm not sure what's the best solution though. Adding the info to the language list will probably take more effort to maintain than a category. A category which is a kind of "Mark of quality" (or something similar) which could be applied to good articles might inspire people to improve them. --Rune 21:35, 23 May 2006 (UTC)
- Why don't you fix stubs by adding the information you want? Seems like a better use of your time. --Graue 01:59, 24 May 2006 (UTC)
[edit] Duplicated pages
I noted that a couple of the linked-to articles in the list of ideas are categorized in the non-existent Category:Ideas, so for consistency I changed the last article to do so also. But this just exaggerates something I have noted (and which has been discussed above for some instances):
This wiki has several categories or special pages that are also duplicated as list articles, needing double editing to keep consistency. The ones I have noticed so far:
- Category:Languages duplicates the Language list
- Category:Joke languages duplicates the Joke language list
- Special:Categories duplicates Esolang:Categorization (the first at least needs a link to the second)
- and now, Category:Ideas might duplicate the list of ideas.
Perhaps there are good reasons for some of these (as the above discussions show), but it should not be allowed to get out of hand. A list containing just a link and no description for each item, such as the list of ideas, can (I assume) simply be moved into the category page, which is my suggestion in that case. For those manually edited lists we do want to keep, perhaps one could make a template that would request an automatic check that every article in a category is linked to from the article containing the template. --Ørjan 20:26, 27 May 2006 (UTC)
- The list of ideas is of my own invention, although some other people posted things in there as well. I think we should keep some the pages that are duplicates of categories (Language list, Joke language list, list of ideas, etc.), and you can use those pages to add short description to them on the list, so you can see the list with descriptions on it. --Zzo38 01:37, 28 May 2006 (UTC)
- Double editing is unfortunate, but AFAIK it is not possible to achieve the layout of the Language list in a category page. Also, it is nice to be able to list a language that does not have an article yet, and therefore cannot be categorized, though ideally there should always be at least a stub. The list contains 8 such entries at the moment. The list of ideas does not currently have anything that cannot be done in a category page, so unless there are plans to add more details to it, I think that it should be replaced by a category page.
- Special:Categories cannot be edited at all, and is not a duplicate of Esolang:Categorization as Esolang:Categorization contains more than just a list of categories. --Rune 10:45, 28 May 2006 (UTC)
[edit] Formal definition of "usable for computation"
I suggest that a language is usable for computation if possible limitation of storage and I/O can be eliminated by trivial manner, and resulting one is Turing-complete. Because many usable computation requires Turing-completeness, I think this definition covers almost all cases including Malbolge and Aura. --Tokigun 11:14, 13 Dec 2006 (UTC)

