It’s perfectly acceptable to compare compiled and interpreted programming languages.

I saw an article today, written by Clinton Forbes, suggesting that it’s useless to compare compiled and interpreted programming languages. The target of his wrath is this comparison of D and Ruby, with it claimed that it is “comparing apples to oranges.”

That is clearly not the case. It is often necessary, and quite acceptable, to compare two programming languages. Both Ruby and D allow for a human to instruct a computer how to perform various tasks. Thus they are the same thing. The execution method (compilation versus interpretation) is nothing but yet another factor to be considered when performing a comparison.

The D versus Ruby article actually offers a very balanced, accurate and informative comparison of the two. The benefits of each are clearly pointed out, as are the weaknesses. In the end, the author finds that D is superior for his task, which is the implementation of a new interpreted language. This is a very sensible conclusion, as the implementation of an interpreted programming language interpreter in an interpreted language will no doubt offer terrible runtime performance.

But I also think Clinton’s article is indicative of a trend I have noticed among many of the advocates of dynamic languages like Python, JavaScript and Ruby. Namely, they’re often unwilling to critically compare their preferred language to other languages, especially when one of the main criteria is runtime performance. I suspect this might be because dynamic languages are often severely handicapped when considering this very critical factor. Their very nature prevents them from overcoming their runtime performance disability.

So as I stated earlier, it’s perfectly fine, and necessary, to compare compiled and dynamic programming languages. And it’s absurd to consider such comparisons to be “useless”.

Leave a Reply

*
To protect against spam, please type the word in the picture. Click on the picture to hear an audio file of the word.
Click to hear an audio file of the anti-spam word