Hi Isaac,
Before we go any further, I want to be clear about a couple of things. I have no problems with what goes on around the shootout site. I don't think that you'll find many people here that do, since a lot of them probably found their own path to ruby. There are quite a few adventurous and curious souls on the list and they spend a lot of time pulling ruby apart trying to understand it more clearly and find ways to make it better. (Putting Matz in the unenviable position of having to reconsider some of the basic features of the language on a regular basis. If I were he, I'd have an ulcer by now...)
By all means, carry on with experimentation with all of the languages that you can get your hands on. But let's not pretend that we're measuring anything.
I was trying to answer "I don't think that I've learned much from the
shootout".Let's try again - "What is it that we are learning about programming
languages?"I don't know what you learn about programming languages from shootout,
the website states "Our goals are to learn about programming
languages..." - the goals of the folk administering the shootout are to
learn about programming languages...
I understand you here, but I don't think that you are very clear about this. More later...
Let's try again - "What do we gain from comparing performance in
"various (possibly meaningless) ways?"Some perspective on how performance varies between programming language
implementations and tasks.
This is a part of what I take issue with. The site offers a great deal of disclaimers regarding the worthlessness of the "benchmarks" there. But most of the space on the main page is devoted to reporting and comparing these benchmarks.
I guess I'm not sure why the site is called "The Computer Language
Shootout". To me, a shootout feels like a thing that pits two entities
against one another in a competition. The result of a shootout is
definitely a winner and a loser, depending on the definition of victory.
History - Doug Bagley's Shootout begat Aldo Calpini's Win32 Shootout
begat Brent Fulgham's Shootout.
With regard to your justification of the name, I'm not sure that history is a good reason to keep it.
When you discuss the site, you talk about it as an educational tool. I'm
all for that kind of thing, and your response to me is reasonable and if I
were looking for help it would be helpful.The problem is the use of the word benchmark. By claiming to offer
"benchmarks", the site is purporting to offer measured and standard
methods of comparisons between programming languages. The many
disclaimers show that these numbers should be taken with a grain of salt,
but the site's keywords, "benchmarking fast programming language benchmark
performance benchmarks shootout program" show otherwise.And so I think that the site, or more specifically its design, is very
disingenuous. The site offers itself as a home for objective comparison
of the performance of programming languages. There is no such thing, and
so the site should not claim that there is.
The site provides multiple comparison programs, which show various
different language implementations "winning".The site shows different ways to "win" - by CPU time, by memory use, by
LOCs.The site provides a synthetic overall score and invites you to
"manipulate the multipliers and weights to make your favourite language
the fastest programming language in the Shootout" for "a solution that
is simple, neat, and wrong".Does the site proclaim A is faster than B, or subvert that simplistic
notion?
Isaac, you entry into this discussion thread was the following post:
> That's even more simplistic than the benchmark programs on the Computer
> Language Shootout
>
> Here's Ruby vs Perl
> http://shootout.alioth.debian.org/benchmark.php?test=all&lang=ruby&sort=fullcpu <http://shootout.alioth.debian.org/benchmark.php?test=all&lang=ruby&sort=fullcpu>
>
> and here are the old Doug Bagley programs
> http://shootout.alioth.debian.org/old/benchmark.php?test=all&lang=ruby&sort=fullcpu <http://shootout.alioth.debian.org/old/benchmark.php?test=all&lang=ruby&sort=fullcpu>
When you follow the Ruby vs Perl link, you are treated to a nice picture and some numbers, all of which (you would assume from reading the page) offer some insight into the comparative merits of the languages.
In this case, the site _does_ proclaim a winner in any number of categories.
The site talks out of both sides of its mouth. Even with all of the language condemning the "simplistic notion" of winners and losers, the site still offers results. It is these results that are dishonest and misleading.
I think that the site would work much better _without_ the results page. Why not let the curious discover their own results? Hands on experimentation is the best way to explore the concepts that you are interested in. Maybe you can find a way to offer free shell accounts that give access to the tools required to experiment with these "benchmarks".
Or at the very least, take the focus off of those confounded numbers.