Talk:Comparison of programming languages

From Wikipedia, the free encyclopedia

Contents

[edit] Type

There should be a column saying which are open source and which are propriety and who controls the propriety ones.

[edit] Lua

I'm suprised Lua wasn't included, I'm quite fond of it.

[edit] ActionScript

Where is ActionScript??? Can someone add ActionScript? I really miss it here :/ thnx

[edit] Disorganized and wrong

I find this chart very disorganized and difficult to comprehend despite having a CS degree and being somewhat familiar with most of these languages. First of all, there are too many columns that are too wide; I have to maximize the window to see all the columns. But on top of that, the columns are not well defined. Generally when you have a list inside of a cell that is a good sign that the column is not well defined.

Take for instance "Typing Discipline". The vast majority of languages listed are "safe", but there is no way to visually determine which these are or more importantly which are not safe. Is C++ not safe or did the author not know? The reader has no way to know this. This causes many errors in this column, for example Java is a type safe language. Some cells have links for safe/static/etc, some do not -- these should be column headers, so listed once, as links. Or the "Paradigm" column... is C really the only flow-driven language? From this table it is impossible to know (nevermind the legitimacy of that particular categorization).

Overall I would have to say this table contains about as much wrong information as correct. Break the columns out into their own tables. Yes this makes the article longer, but when you are comparing 25+ languages it should be long.

STRONGLY agreed here. Half the entries aren't languages at all, but dialects (BASIC vs Visual Basic for example, or scheme vs LISP). Most of the listed "influences" aren't listed themselves. Where is the distinction between "X is a language influenced by Y" and "X is a dialect of Y"? The selection/claim of "widely used" appears at best anecdotal (and in strong conflict with my own experience). Some of these are at best marginally to be considered computer languages (like mathematica). "Expressiveness" appears to be introduced for the sole purpose of having some meaningless number that is proclaimed higher for some language than some other language. Does this article convey any actual information??

[edit] Cleanup tags

I've added three cleanup tags to this article:

  • Tone: This table doesn't appear to be a subsection of any article, but is presented in list form rather than encyclopedic prose.
  • Importance: What information does this article provide that cannot be easily found using Category:Programming languages?
  • NPOV: The article represents only a tiny fraction of existing programming languages that the author has asserted (without proof) to be "widely used", ignoring many other widely used languages.

donhalcon 06:04, 6 March 2006 (UTC)

I removed the tone template. Two articles now link to this article, and they'll be more once I fix this article up a bit more. I'm not sure whether you'd consider a "See also" link to this article good enough though. -Barry- 03:21, 2 May 2006 (UTC)

[edit] Fix Up

I added languages from the chart at http://www.tiobe.com/tpci.htm except Javascript. Will include Javascript if it's decided it should be included. I think including only languages in that chart on tiobe.com is a decent way to maintain NPOV. Still needs to be completed.

I credited TIOBE as required on http://www.tiobe.com/tpci.htm:

Q: Am I allowed to show the TPC index in my weblog/presentation/publication?

A: This is OK provided that the original source is referred to: www.tiobe.com.

-Barry- 00:47, 2 May 2006 (UTC)

You should put absolute ratings (if any) in the table, and also an explanation what exactly it is. This looks like Ruby and D are currently the strongest languages in the world. Samohyl Jan 06:04, 2 May 2006 (UTC)
I added a Popularity column for those absolute ratings. Someone tried adding languages that aren't on TIOBE's list. I think that's fine even though some may consider a point of view. It will help expand the chart. The chart will still have the most popular languages (once I finish adding them). Just remember not to mess up my work when you add more languages. Someone deleted useful information just because he didn't want to bother adjusting his edit once I made mine, so I had to revert him. -Barry- 21:29, 2 May 2006 (UTC)

What specifically should go into the paradigm column? There are some that are very obvious (like structured programming) that do not need to be listed because all current production languages follow that paradigm, but some that are near obvious that's normally taken for granted but is not necessarily the case. I left that in C but would it be better to just remove it, considering the only event-driven language on the list is Visual Basic? Ekarderif 17:29, 3 May 2006 (UTC)

[edit] TIOBE

I propose eliminating the TIOBE data, as there is no citation that Google hits translates into actual popularity. At the very least a term other than "popularity" should be used. But I would prefer that the comparison stick to verifiable data such as typing.

And on that note, since when is C# dynamically typed?--Craig Stuntz 14:50, 4 May 2006 (UTC)

There's Wikipedia:Search engine test. Under idiosyncratic usage it says "A series of searches for different forms of a name reveals some approximation of their relative popularity."
The TIOBE data has been around for a long time and is regularly updated. At [1], where it says "The definition of the TPC index can be found here" you can click "here" to see an explanation. I don't think it's a good explanation, especially for laymen, but it provides some details that might matter to some people.
Here's a discussion that might be of interest.
About C# being dynamically typed, I got that from the infobox on the top right of C#. I don't know. Here it just says "C# is strongly types and provides extensive compile-time and run-time checking; unlike Java, C# supports C-style unsafe pointers, but only within specially designate code sections." Nothing about being other than strongly typed. -Barry- 16:00, 4 May 2006 (UTC)
The "idiosyncratic usage" section refers to different forms of the same term. Not comparing entirely different products. To my mind the most useful thing about the "Google test" is demonstrating when something has no popularity whatsoever, not comparing several very popular things. Aside from the fact that there is no formal demonstration that TIOBE numbers accurately reflect popularity, there are better things we could do with the space. Listing supported platforms, for example. I think the bit at the C# article regarding support for dynamic typing is just wrong. I've seen a presentation by Anders Hejlsberg where he mentions that he's interested in dynamic languages as the inspiration for features in yet-to-be-invented releases of C#, and discusses mixins in some detail. Being runtime type checked is an argument for strong typing but not for dynamic typing. --Craig Stuntz 18:08, 4 May 2006 (UTC)
I think people are informed enough about where the numbers come from and they can take the information FWIW. I guess we can change "Popularity" to "Web popularity" but keeping the details in footnotes seems enough.
Lets not worry about space. We could create a continuation chart below the current one, listing the same languages and different features. In addition to showing supported platforms, some possible additions could be official websites, discussion (message boards, chat rooms, newsgroups, mailing lists, etc., or maybe give each a separate column), license type, support (vendor or community only, free or paid, etc.), and maybe some of the sections here and here. -Barry- 18:32, 4 May 2006 (UTC)
I'm not suggesting that readers in general are too dumb to figure out that the numbers in the "popularity" column don't actually mean popularity. I'm saying that a Wikipedia article which claims they do is violating Wikipedia's standards for verifiability. If you really want to track search engine results, call the column "Search engine results," but I just don't see that it's relevant to much of anything. I'll change the column name for now.--Craig Stuntz 20:39, 4 May 2006 (UTC)

[edit] Other languages that should be covered

  • Algol
  • APL
  • SNOBOL
  • Ferite
  • BASIC
  • PL/I
  • Pascal
  • Prolog
  • SML
  • OCaml
  • Haskell
  • elisp
  • Turing
  • Eiffel
  • Curl


Please sign your comments.
Remember that there was a NPOV issue, which is one reason I used TIOBE's list of the most popular languages. First we should add SAS, PL/SQL, Visual FoxPro, and VB.NET, which are among the most popular. They're in TIOBE's top chart. Then we can start adding languages from the chart titled Other programming languages, which all have a search engine hit rank (called position on TIOBE's site). Then The Next 50 Programming Languages, and then whatever we'd like to add, which we could rank as >50.
When adding a language that's listed in the Exceptions and inclusions chart (called Groupings and Exceptions on TIOBE), we could either add the language in left column or any/all of the languages from the corresponding line of the right column when it contains inclusions. If some features that we'd be plotting were different among the languages in the line of the right column, then we should probably add each "included" language seperately and give all of them the search engine hit rank of their "parent" language listed in the left column. -Barry- 15:06, 5 May 2006 (UTC)
We should also add to the table a note if there is an ANSI standard and cite it. -Mark 11:01, 20 Sep 2006 (UTC)

[edit] others

and more...

[edit] How should Template:Type_system_cross_reference_list be used in this article

Should Template:Type_system_cross_reference_list be linked to or included in full in this article? Should safe/unsafe be in a separate column from strong/weak as it is in the template? -Barry- 00:56, 18 May 2006 (UTC)

[edit] TIOBE (again)

We're relying heavily on TIOBE data here, and yet they are a commecial company whose bias has been seriously questioned in the past, and which relies on search engine results for their numbers. Is this really something Wikipedia should be perpetuating? -Harmil 17:31, 22 May 2006 (UTC)

I wouldn't say we're relying heavily on TIOBE. The vast majority of the TIOBE stuff is just to clarify what the actual data is about. If a reader skips the long quote in the footnote, they'll actually be more skeptical of the data because they'll still know it's from a search engine and won't know of the extra effort made to get relevant results.
I don't think TIOBE has been accused of bias. They were questioned about the sudden drop in rank of one of the languages and they explained it was a change in the search engine. TIOBE added more checks to reduce such events.
Their data has been said by some Wikipedia editors to be inaccurate (mostly editors from another article whos language didn't come out looking too good), so this article now uses overly cautionary wording and doesn't even say that it's an approximation of popularity (a phrase I admit I'd try putting back if you ever lost interest in this article.)
One compromise would be to move the TIOBE data from the main chart to a separate section, but that would take up more space, and I really don't think the TIOBE data is hurting anyone. If more columns eventually get added and the top chart has to be split in two, the TIOBE data would go in the continuation chart under the first part of the chart.
I added this warning to the footnote section "The relevance of the TIOBE data is disputed for anything other than estimating how much internet coverage there is of certain programming languages. It's only included here because of its relation to the subject matter of this article. No value to those seeking a popular programming language is implied by the data's inclusion." -Barry- 23:46, 22 May 2006 (UTC)
Ahem. Please assume good faith. I mostly program in C# and Delphi, both of which do rather well by TIOBE "standards," and I still think it's irrelevant. I don't know that TIOBE is biased per se but I would say it uses a biased methodology. I can live with the "SERP" description since that's an accurate assessment of what TIOBE does. I honestly can't imagine why you'd want to revert to a description like "popularity" which cannot be cited. (My personal opinion is that it can't be cited because it isn't true. But that's beside the point. It can't be cited regardless of the reason.) --Craig Stuntz 17:54, 23 May 2006 (UTC)

Craig: with this edit you completely removed my reasoning for including the data, so I know you saw it, yet you're questioning the data's relevance to the article. It's very simple. I said "It's only included here because of its relation to the subject matter of this article." The removal of that line isn't so bad because it should be obvious that the data was included for that reason, but unfortunately it isn't to some people. The SERP results aren't bad statistics based on bad techniques. In fact, they're probably perfect. As long as there's no misrepresentation of what they are. -Barry- 02:15, 25 May 2006 (UTC)

I removed the reasoning because it wasn't cited and was circular logic as expressed. Asserting relevance does not make it relevant. I see no point in arguing over whether or not SERPs correspond to popularity because the standard for Wikipedia is not truth, it's verifiable truth. Unless and until you can cite verifiable sources for the claim you've made here on talk and in older versions of the article it needs to stay out of article space. --Craig Stuntz 02:53, 25 May 2006 (UTC)
Do y'all think its time to remove the TIOBE columns? The others are relevent to the comparison of computer languages and should remain; however, there seems to be consensus between several editors that the TIOBE data is suspect. Steve p 21:05, 26 May 2006 (UTC)
I think it's time to remove them not so much because several editors consider them suspect, but because the single editor who supports them has provided no reason to consider the results verifiable. --Craig Stuntz 17:05, 1 August 2006 (UTC)
I have in several places. I think they're verifyable in every imaginable way. I quoted pages from Google Scholar that use the data to indicate popularity. But I won't revert if you remove it. Wikipedia sucks. -Barry- 00:39, 3 August 2006 (UTC)
If that's the argument in favor (your personal opinion, your imagination, and whatever turns up on Google), it doesn't begin to meet WP:V, and should go. --Craig Stuntz 00:49, 3 August 2006 (UTC)
It's not my personal opinion or imagination or whatever turns up on Google. Google Scholar isn't the standard Google search engine. This is one of the places where I link to the scholarly material that uses TIOBE. It's obvious that search engine results are verifyable. It doesn't have to indicate popularity to be in this article anyway. Statistical data about some aspect of programming languages, especially when it comes from a popular website, fits here. -Barry- 02:00, 3 August 2006 (UTC)
The question isn't whether those sources that quote the TIOBE index are scholarly, its whether TIOBE itself meets WP:V. Steve p 05:41, 3 August 2006 (UTC)
Neither TIOBE itself nor the "scholarly" (I use the term loosely; not everything published in academia is in fact scholarly!) material you quoted in Talk:Perl is a verifiable case for TIOBE having significance with regards to actual popularity. The paper you quoted simply passes on the assertion, just as you do. Regarding the "verifiability" of search engine results, nobody is claiming that TIOBE is fudging the Google hits; the verifiability question is the implication that they mean something. --Craig Stuntz 12:46, 3 August 2006 (UTC)
Just delete it then. There's no dispute resolution worth a darn around here, and I won't waste my time with these things anymore. -Barry- 14:12, 3 August 2006 (UTC)

Just came across this page. The TIOBE column is weird, hard to understand, and I am a programmer. I believe it should go. Comparison doesn't mean ranking, so I see little point in keeping the information. -- cmh 02:22, 2 June 2006 (UTC)

You can compare the ranks. I think programmers are used to things that are hard to understand, but feel free to reword things. -Barry- 04:11, 2 June 2006 (UTC)

SERP data is an absoltue and utter misrepresentation of how good a language is. While it is not intended to be a measure of language goodness, it can be erroneously but frequently construed as serving that goal, and it therefore needs to be deleted once and for all. Where the SERP data comes from is irrelevant. --Amit 17:40, 7 August 2006 (UTC)

[edit] Benchmark results

Please review Talk:Perl for the history of the benchmark results that User:-Barry- tried to inject here. His edits were removed from Perl by three different editors, and he's been revert warring endlessly there, so he seems to have decided to bring his edits here.... -Harmil 05:33, 23 May 2006 (UTC)

Someone in the Perl discussion claimed to have made Perl's benchmark script faster. He didn't claim it would be enough to win any more tests. He wouldn't use a web based diff tool that I pointed him to that would have allowed me to see his changes in the context of the full script (it's the easiest to use diff tool there is and the results get saved automatically). Still, I was able to see that he failed to follow some best practices for programmers by using default variable names that don't describe the data. I admitted it was allowed, but you can't say a benchmark is flawed just because it's not written using bad programming practice and therefore runs slower. If it did win another test, that would be one extra out of about 32, and then to be fair, we'd need an expert in the other languages that Perl's compared to to try to optimize the other benchmark scripts.
I provide disclaimers, as always. If you want them strengthened, go ahead, but don't delete data that some people rightly believe is meaningful. -Barry- 05:52, 23 May 2006 (UTC)
I don't want the disclaimers strengthened at all. Disclaiming bad results doesn't make the encyclopedic. They are bad results. The search engine lookups are bad statistics based on bad techniques. The Benchmarks are fairly reasonable statistics based on poor code. I and other editors have pointed this out to you over, and over again. You're not listening. Please, remove your bias from this article in whatever way you like before others do it for you.
For those not paying attention, User:-Barry- is a self-professed anti-perl advocate who has been pushing Python-centric bias on Perl for a month or so. His failures there lead him to this article, which he apparently feels he can inject the exact same flawed numbers into with impunity. I'm a great lover of Python, but I have to say that it seems to attract and energize exactly the worst kind of advocate. I have no idea why that is the case, but it hurts an otherwise nice language. Shame. -Harmil 04:38, 24 May 2006 (UTC)
Please make your point without resorting to personal attacks. It hurts your case; it does not help it. I would like to suggest that you remove your last paragraph and the last sentence of the first paragraph as they violate WP:AGF and take away from the very reasonable point, I think, in the first paragraph. Thanks for listening. --Craig Stuntz 13:12, 24 May 2006 (UTC)
Let me re-state. I think I was being quite reasonable, and have long been the "good cop" in situations involving -Barry-. I've been, in fact, the only one who has tried to reason with him to get him to contribute rather than advocating.
To be clear, User:-Barry- is a self-professed anti-perl advocate who has been pushing Python-centric bias on Perl for a month or so. That much is currently the topic of a mediation page, on which I have documented his behavior extensively. He came to this page, after his attempt to place an "alternative langauges" section in the Perl article (listing Python), which he has said in edit summaries on the Perl article, is "better than Perl". He has injected into this page, the exact same flawed benchmarks and flawed Web popularity search results that he was told were flawed by many editors on Talk:Perl. I even went so far as to re-write one of the benchmark tests to demonstrate this to him, and he dismissed the result without consideration as too small a sample to demonstrate anything.
Please, help me to understand how to say that in a way that does not sound like a personal attack. I know that I'm saying, "-Barry- is a biased anti-perl advocate." I mean exactly that. I don't mean "he's a bad person." I don't mean "he will never change." I do mean that he is a disruptive editor who has been pushing his own agenda to make a point. -Harmil 14:19, 24 May 2006 (UTC)

I think you stated your point quite well in your first few sentences:

I don't want the disclaimers strengthened at all. Disclaiming bad results doesn't make the encyclopedic. They are bad results. The search engine lookups are bad statistics based on bad techniques. The Benchmarks are fairly reasonable statistics based on poor code. I and other editors have pointed this out to you over, and over again. You're not listening.

That by itself seems fine to me. It doesn't matter why -Barry- posted this stuff; what matters is the relevance, or lack thereof, to the article. --Craig Stuntz 15:29, 24 May 2006 (UTC)

With this edit, Pudgenet removed information about Perl's benchmark module from a section about Perl benchmarks. He thinks a quote from an expert is unallowed because it's his point of view. I say it belongs. -Barry- 02:23, 25 May 2006 (UTC)

Not everything any expert says is necessarily encyclopedic content. I personally find the "sux" comment to be not substantive, whereas the presentation itself goes into some detail about what he thinks the flaws are and how to avoid them. Note that the flaws he identifies have as much to do with how the benchmark is used as the benchmark itself. He also gives an example of how to use it correctly. This is a very common theme in misunderstandings of benchmarking — I'd venture to say that benchmarking is misunderstood by more people than it's understood by. It's certainly not what comes to mind when you read the single word "sux." With that in mind, I'd say that a one-word quote like that is not a fair representation of the presentation's point regarding that module. --Craig Stuntz 03:05, 25 May 2006 (UTC)
Yes, Craig, and this all was gone over before with -Barry-. He lost the battle for the very reasons you cite on Perl. He just doesn't care, and figured maybe he would have a better chance including it over here. Pudge 21:16, 25 May 2006 (UTC)
The benchmarks should be in Perl's article too. The benchmark chart and the "sux" comment are separate issues. In Perl, nobody wanted the chart OR the text.
The arguments in your edit summaries are very different from Craig's argument above. Your argument was "Removed Barry's non-NPOV and unencyclopedic commentary that has been removed for same reasons elsewhere." I still say that a quote from a Perl expert who co-authors Perl books isn't unencyclopedic even if he uses the word "sux" but rephrasing it would have been fine with me. Quoting his "sux" comment is in the same category as quoting the other slide that he got from the benchmark site, which seemed to be acceptable. How do we know his second hand advice is a NPOV? We don't, but we allow it because he's a notable expert. We just need to try to prevent misleading people when we include it, but we don't omit it. -Barry- 21:48, 25 May 2006 (UTC)
No, the benchmarks should not be in Perl's article, for two reasons. First, they are, in fact, meaningless. Second, the consensus says they should not be included. As to your thinking "sux" is relevant: that is a great example of why you are having so many problems here. It simply is not relevant. The fact that someone said something "sux" means nothing without context, which was not provided. You meant it to imply there was actually a problem that the person who said it himself did not mean to imply. Stick to facts, not trying to impugn a language you dislike with out-of context quotes. Oh, and while I'm at it, you could also stop lying about Scaripa being a vandal. I know Wikipedia's Golden Rule is to assume good intentions, but you clearly are operating with ill intentions, and Wikipedia would be a lot better off if you simply went away. Pudge 06:03, 27 May 2006 (UTC)
I believe all the Perl benchmark data adds WP:POV The data shown is exceptionally limited in scope. There is not enough information on how the interpreted languages were built, such as C compilers used, versions, optimization flags used, configuration flags, etc. The benchmarks are limited in terms of CPU types and operating systems. Without much more information, it is imposible to determine whether there was intentional or unintentional bias added to the results, even in cases where it shows that Perl performed better. Steve p 01:05, 28 May 2006 (UTC)

[edit] Harmil's comments about the Python community

Sorry if this is off topic, but it's in reply to something Harmil wrote in the Benchmark discussion. If his comment is allowed to remain, I must reply.

Harmil wrote "I'm a great lover of Python, but I have to say that it seems to attract and energize exactly the worst kind of advocate. I have no idea why that is the case, but it hurts an otherwise nice language. Shame." I've heard the exact opposite from many sources. Larry Wall, father of Perl, even tried justifying the behavior of the Perl community by saying "Perl is postmodern, so Perl advocates are allowed to employ logical fallacies, cheerleading, dramatic swings of opinion, fence-straddling, evangelism, and finger pointing as needed in order to defend their position." which was quoted in a critique that was reverted by Scarpia. #perl on Freenode (IRC) is full of profanity and when I questioned it, I got even more and someone was bragging about #perl being the most "colorful" channel on Freenode for that reason. In a Perl newsgroup discussion, I heard the Python community being criticized for being artificially polite (forgot the exact words). Someone alluded to this known difference between the Perl and Python community just a day or two ago in Wikipedia's chat room on Freenode when I went there for advice on how to handle the bias here. So, if Harmil isn't lying, he must be thinking about all of the justified criticism of the behavior of the Perl community. Oh, and one of Shlomi Fish's editorials that was reverted makes reference to the problem with the Perl community as well. And don't get me started on all of the members who left Perlmonks because of this problem. I was the only one considered a troll. -Barry- 03:15, 25 May 2006 (UTC)

Larry Wall never said what you attribute to him. Here's what he did say. The quote you attribute to him is in fact from the critique you cite. Now, the author of the critique is certainly entitled to his opinions on what Larry Wall says, but the author's opinions should be attributed to the author, not presented as a Larry Wall quote.
You know how I keep asking you to cite sources? This is a good example of why.
I'll say to you what I said to Harmil elsewhere: Two wrongs don't make a right. I think Harmil unfairly questioned your good faith in an edit summary to this article. Now I think you're doing the same thing to him here in this discussion. Please stay cool and stick to the facts. Thank you! --Craig Stuntz 13:22, 25 May 2006 (UTC)
I think I recall someone mentioning citing sources. It probably didn't make an impression on me because I do. I did above too. If I had said the above in the actual article, you would be correct for clarifying it (not deleting it). I wouldn't object to a disclaimer in the article that clarifies that the bulleted list in the editorial doesn't contain exact quotes.
I don't think the edit summary "User:-Barry- has been taking heat for injecting these flawed benchmark results in Perl, so he's come here. Good faith credulity is strained" was unfair. It's ok to draw attention to the perceived lack of an editors credibility, especially if you don't like many of his edits. -Barry- 20:40, 25 May 2006 (UTC)
I honestly can't believe that referring to an edit which removes a link on a different page to a quote on this page misattributed to someone who never said it counts as "citing sources." Citing sources, to me, means that direct quotes should in pretty much every case be followed by a footnote with a direct link to the quote in full context. To be clear, I'm talking about the claims made here, on this page. I haven't the time or energy to follow the Perl article. --Craig Stuntz 20:24, 26 May 2006 (UTC)

[edit] Color codes in benchmark table

Someone added red, yellow, and green colors to the benchmark table. I think red means lose, yellow means it's close, and green means win. To do this accurately, I think that for each row of each language's table, we should add the four numbers, which will be the total number of tests performed in determining the speed, memory, or size (depending on the row), and divide by three (call this the first result). I think said total number of tests will average about 64, so lets use that for this example. The first result would then be 21.4. Imagine a line that spans 21.4 units in the positive and 21.4 additional units in the negative, and divide it into three sections, kind of like:

NEGATIVE -------------- -------0------- -------------- POSITIVE

Then we subtract the sum of the two numbers in the right column from the sum of the two numbers in the left column, and if that difference equals a number in the first third of the line above, then the Perl cell for that line gets colored red. If the difference falls within the second third, then yellow. And for the third third, green.

There are probably terms and formulas for this, so if anyone knows how to explain this conventionally or wants to correct something, please do.

I haven't determined yet whether the color codes that were added conform to the above algorithm. -Barry- 14:08, 3 June 2006 (UTC)

[edit] Perl benchmark awkward and superfluous

The whole section just reads really weird. The main table addresses a couple dozen languages, but the "benchmark" section is specific to Perl (albeit comparing it to a half-dozen other randomly chosen contrasts). Moreover, there is all this extraneous detail about specific architecture and stuff, but the "results" are this very hard to quantify "number of tests won"...without any specifics of what the tests are. Maybe we can just give a general pointer to http://shootout.alioth.debian.org/, and let readers generate the comparisons they want (from all the thousands of permutations that site allows). LotLE×talk 17:45, 3 June 2006 (UTC)

I intend for there to be a subsection for many languages. Perl is just the first one because I already had it done. I'll add more myself eventually if the table sticks around.
Links to two pages (one for each operating system tested) are provided, and they provide a way to see what the tests are and what the individual results are for each test. You currently have to use a form to select the language you're interested in, but I could add a direct links to the specific page for each language and make it clear that individual tests and results are shown there.
But if you want to remove it, go ahead, because I'd rather not spend my time making similar charts for other languages if they'll all be reverted sometime in the future. I might do so anyway, for another website, but not in the near future.
I think my days of epic contributions to Wikipedia are over because of lack of support from inclusionists. Maybe Wikipedia needs an Adopt a section program in which administrators decide that a certain section can be best maintained by one editor and that author is given exclusive editing rights. -Barry- 18:22, 3 June 2006 (UTC)
Wikipedia actually has the opposite rule. See WP:OWN. This is Wikipedia official policy. --Craig Stuntz 02:46, 4 June 2006 (UTC)

[edit] Thousands

"There are thousands or PL". This has to be confirmed. I don't know so many languages. Acaciz 18:05, 3 June 2006 (UTC)

There's a footnote next to that. Click it and you'll see a reference that links to a site where you can find a list of languages. -Barry- 18:22, 3 June 2006 (UTC)

[edit] Lulu: you broke the article in IE

Look at the expressiveness section in Internet Explorer. At this time it's broken. The formatting was there for a reason, and some that you've removed had comments indicating what it does. Default isn't always good, and this time it's horrible. -Barry- 18:27, 3 June 2006 (UTC)

I don't own IE; but all the weird page-layout HTML cruft made the whole article look simply horrendous in the several browsers I tried. Please think of Wiki readership: articles aren't about custom visual layout in some sort of page-layout art-house thing. WP doesn't tweak for specific OS, browser version, display resolution, ad naseaum to get some visual specifics... the right way is to use strictly Wiki codes, and let any issues in rendering get addressed by the MediaWiki developers site-wide. LotLE×talk 18:34, 3 June 2006 (UTC)
Why is it better to have all that whitespace next to the Contents rather than having the intro in that space? Why are footnotes for a particular section better at the bottom of the entire article than at the bottom of the section. The Benchmark section isn't flush left now, and the Expressiveness table is between two sections. -Barry- 18:41, 3 June 2006 (UTC)
None of the characteristics you describe as desirable actually render the way you say outside of the specific browswer, OS, version, display res, font choice, CSS, etc. that you apparently use. I never saw those things you mention, for example. This was certainly the most crufty page I've ever encountered markup-wise, it seemed to entirely eschew Wiki markup, and be thick with HTML. Yuck! Remember, WP is about content, not about page composition. LotLE×talk 18:46, 3 June 2006 (UTC)
I tested it in IE and Firefox and it was identical. Now it's broken in IE. And what in the name of all that's holy was wrong with leaving the language groupings in a table, where all the included and excluded languages are aligned to the left of a column? I could understand not bothering to create a table, but why bother to make it worse by removing it? -Barry- 18:49, 3 June 2006 (UTC)
Just because it looked absolutely terrible and was not tabular data. LotLE×talk 18:51, 3 June 2006 (UTC)
Btw. What is "broken" in IE? It may be that I missed some more markup cruft that is doing something odd. Of course, you'll have to say what exact IE version, OS version, font size, display resolution, Windows patch level, CSS settings, etc. that you have that makes it "broken". Moreover, I suspect that 99% of the pages on WP are similarly "broken" if you are aiming for some oddly specific visual layout. LotLE×talk 18:54, 3 June 2006 (UTC)
It was tabular data at least as I know it, but not so much now that you removed the column headings.
I'm using IE 6. Didn't check it in Firefox. Can't talk more now. I'm going to my happy place. -Barry- 19:00, 3 June 2006 (UTC)

OK, I admit I lied slightly above. I actually do have Win XP Professional SP1 installed in a Parallels virtual machine on my Macbook Pro. This apparently has IE 6.0.2800.1106.xpsp1.020828-1920 on it. With all this version specifics, I cannot see anything wrong with the page rendering... well, other than the fact IE or Windows chooses an ugly default font, but I could probably change that. 70.109.234.149 19:12, 3 June 2006 (UTC)

[edit] Unicode in source and identifiers.

Why dont yuo compare the ability to have unicode in source code or in identifiers? —The preceding unsigned comment was added by 213.41.137.29 (talk • contribs) .

That's tricky, as it could vary from compiler to compiler. Most actively updated languages do tend to support that these days, however. --Craig Stuntz 20:01, 15 June 2006 (UTC)

[edit] BASIC?

Where's BASIC, instead of the psuedo-BASIC Visual Basic? I'd like to see Liberty BASIC, for one. - MSTCrow 00:51, 7 July 2006 (UTC)

[edit] Ruby is a concurrent language?

In the column listing supported programming paradigms, Ruby has "concurrent" listed. I'm not familiar with Ruby, but looking around a bit fail to see anything that gives Ruby more language features for concurrent programming from most other languages. Is listing Ruby as a concurrent language misinformation? Can someone enlighten me? Slartoff 17:40, 5 August 2006 (UTC)

[edit] Weak Typing in c++?

I may well have my definitions mixed up here, but doesnt c++ have both strong and weak typing through static_cast<type>(var) and the older c-style cast (type)var? It is only labelled as weak in the table.

Technically if you use only the newer casts and features it would be strong AFAIK and the C++ creator considers it strong typing, I believe. However, you are right in that if you use old features then it would likely be both kinds of typing... RN 09:40, 28 August 2006 (UTC)

[edit] incomplete

i was going to create a new article called comparisions of computer langauges, basically because this list is limited to most common "programming languages" i propose a list of comparasion of all common "programming and scripting langauges" e.g. html/bat/c, ect, because it is impossible to compare all langauges..

just a stupid suggestion of mine.. Sokal 01:46, 21 September 2006 (UTC)

[edit] Expressiveness

What the heck is it? I've searched the whole wikipedia (ended up mostly in gene expression) and even used some of Google search and this page is the closest I've come to it (specifically, the graph). But, In Computer Science, what exactly is expressiveness? There doesn't seem to be a page on this wiki. Should I make a request? 128.122.253.196 18:47, 28 September 2006 (UTC)

[edit] 20061030 ;; the beginning of the great and mighty series

Attempting to upgrade this article to more than just 'superficial comparison' status. Doing so will require a 'series' ... let the games begin! dr.ef.tymac 01:28, 31 October 2006 (UTC)

[edit] who influenced who (Java vs. C#)

I know it is tempting to put various influences into influence, but please, if you do, try to push your POV (even referenced) at the page about the language first. The pages about respective languages are monitored by more experts, and also for consistency. This page should be (mostly) summary of other data found in Wikipedia. Thanks. Samohyl Jan 19:01, 15 November 2006 (UTC)

I don't think this is a question of 'who influenced who'. I do believe that C# strongly influenced Java (and will continue to do so), and C# was obviously influenced by Java. But perhaps the column should state 'initial influences' instead? - 82.161.89.103 22:13, 18 November 2006 (UTC)
That's not my point. If you want to argue about that, please do so at Java (programming language) first. Samohyl Jan 00:44, 19 November 2006 (UTC)
Yes, point taken. It's just that it isn't (or wasn't) the only thing that was mentioned here first, combined with your liberal use of the 'POV' acronym, that made me reply here first. Anyway, the Java page now includes the changes, let's see if they stick. - 82.161.89.103 23:58, 20 November 2006 (UTC)

[edit] Pascal

Anyone willing to add pascal to this? Hopquick 03:10, 25 November 2006 (UTC)


[edit] The hundred-year language by Paul Graham

Link to The hundred-year language by Paul Graham. Keynote from PyCon2003 was removed from Python page - maybe for a reason, but I hope it can stay here on comparison page. It is nice article about how languages evolve and what features we may expect in the future. (we will have CPU cycles to spare - how to burn them with positive result?) migh bring us —The preceding unsigned comment was added by 128.36.29.71 (talk) 13:49, 8 December 2006 (UTC).

[edit] Expressiveness

This section needs to define "statements", define "lines". It needs to tell you what the hell the "statements ratio" means. That table is useless without defining terms. Fresheneesz 01:17, 15 March 2007 (UTC)