Computer Language Shootout Conclusion |
Back to the Language Shootout Back to Doug's Homepage |
After comparing all these languages, I have come to the conclusion that the best musical instrument is the accordian! Everybody Polka!
No, really, there is no conclusion!
This is a work in progress. I'm still far more concerned with learning and having fun than reaching a conclusive result. I put it on the web because I thought it would interest others. Even though I put disclaimers on the page, and I try not to make any claims, I see some people say the shootout shows that "language X is faster than language Y".
That claim is probably premature and hence, bogus. I suppose you could make the claim that, in "Doug's word frequency test, on a PII-450 running Linux 2.4, given a certain input, language X is faster than language Y" Assuming, of course, that I haven't made any mistakes. Some of my tests are also arguably poorly designed and meaningless. (Hey, if you have some better ideas, please write to me).
Benchmarks are notoriously misleading, and perhaps mine aren't any better, although I do try. Benchmarks tell you about results in a very specific case. Drawing a general conclusion is problematic.
If you feel you must draw a conclusion, you should also ask yourself what it really means ... after all if performance were the only criteria for choosing a language, we'd all be programming in pure assembler. It's best to keep it all in perspective. Programmer efficiency is usually much more important, and I do not even try to measure that.
I just want to emphasize that I'm not making any claims based on these pages, and if you do, it is at your own peril. For instance, when I fixed some bugs in my memory sampling method, many of the memory scores came out completely differently. It could happen again.
There is no conclusion because you are basically looking at my lab notes, not a completed research project.
Sure, I hope that eventually I'll have a nice conclusion posted here. Or at least confirmation that the tests are valid, and make a decent benchmark to discriminate between languages. But even then, the most we'll be able to talk about are speed, memory and code size. These are not necessarily the most important factors when choosing a language. If I had x86 assembler as a language entry, it would most likely win in the speed and memory categories, but would you use it to write a complex application?
|
Back to the Language Shootout Back to Doug's Homepage |
Send me comments or suggestions. |