Computer Language Shootout

Just read an article linked from digg.com comparing the performance of various programming languages.

On most tests, it’s amazing to see how slow Perl, PHP, and Ruby are. What I did find interesting is that Python seems to be faster than all of the above on most tests. The other point of note, is that Java is in the same ballpark as C/C++.

Most of the test programs seem to be computationally intensive, so you need to be careful about reading too deeply into this. For example, most of the PHP code I’ve written is performance limited by the MySQL queries embedded in it, not the speed of PHP. So I’m not about to abandon Perl or PHP, and I still plan to learn Ruby.

I have played around with Python in the past, and this tells me I should revisit it, and not just mindlessly follow the current fashion for Ruby.

I’ve also been writing some Java recently (which seems to have improved a lot since I last wrote Java code about 7 years ago). The code I’ve been writing is quite computationally heavy, so it looks like it was a good choice. And even if I’d gone for C++, I don’t think any potential performance gains are large enough to compensate for the benefits of Java (rich libraries, garbage collecting, cross platform binaries).

Finally, it’s interesting to note that the three official languages at Google are Python, Java, and C++.

2 thoughts on “Computer Language Shootout

  1. Isaac Gouy

    “amazing to see how slow Perl, PHP, and Ruby are”
    Maybe the programs aren’t that good – conspire with others to contribute better programs.

Leave a Reply