Which programming language is best?

Four years ago, I wrote about FreePascal (FPC) as the best optimized open source compiler based on Computer Language Benchmarks Game (CLBG). Today, I look again at the game and, surprisingly, got a very different result. The fact makes me quite sad. Looking further at the fastest computer language category, I feel a deep disappointment. 😦

At May 2007, FPC was the best programming language when speed and size (memory footprint) weighted equally. Though it was not the fastest programming language, C (gcc) was the fastest, but FPC was still in top five of the list. It was on the forth if I remember it correctly. Today? It’s no longer the case.

Let’s see the result of the best programming language, as taken on May 4th, 2011.

This result is taken on May 4th, 2011

As the table shown, FPC is now on the fifth. But don’t be happy with that! If you look at the number of languages at 2007, GLBC was comparing more languages than it is today. I believe Eiffel (SmartEiffel) and D (Digital Mars), which both are good languages and compilers by the way, could possibly be better than FPC. Too bad some good programming languages and compilers are thrown out of the game.

Now let’s look at the fastest programming language result, as taken on the same day as above.

This result is taken on May 4th, 2011

Now FPC goes waaayyyyyy down the hill! From the top five at 2007 to the 14th on 2011. It’s not even in the top ten! The most disappoinment come from the fact that C# and Java, both interpreted languages, beat FPC as native programming language. Something that I believe won’t be happened, is now actually a fact! It really makes me sad and, honestly as a pascal warrior, a bit humiliated. 😦

I still believe that, theoretically, native programming language will always be superior both on speed and size against interpreted one, unless the native one is poorly written. And my believe is proven by the fact that C (gcc) and C++ (g++) is on the top both on speed and size. This fact makes me suspicious that there’s something wrong with the development of FreePascal, especially on the speed optimization part. Though I don’t know what is exactly wrong as I ain’t an expert on compiler code and development.

However, for many other reasons than speed, I still favor pascal as my primary programming language and FreePascal as the compiler. I also still believe in FPC’s developers commitment to make FPC as the best native compiler in the world. Just let’s hope FPC development team wouldn’t become as lazy as Delphi’s. 🙂

Or, perhaps it’s time to move on? 😉

8 Responses to Which programming language is best?

  1. mambamaestro says:

    move on maybe the best choice..

  2. Bee says:

    Yeah… I’ll keep moving on… with Pascal. 😛

  3. Bee says:

    GLBC was still using FPC v.2.4.0 when I took the result above. I took them in the morning, my local time (GMT+7). Coincidently, a few hours after I wrote this post, GLBC updated its FPC to v.2.4.2. After using v.2.4.2, GLBC reported that FPC became number one again at best programming language category, as I looked at it a few minutes ago. Though it’s a good achievement but there’s no significant improvement on speed optimization because FPC still out of the top ten on the fastest programming language category. Let’s hope the speed improvement will be available on the next major release. 🙂

  4. Isaac Gouy says:

    Coincidently, a few hours after I wrote this post

    Not entirely “coincidentally” – I’d noticed that you were drawing attention to those Free Pascal measurements.

    otoh I was already in the process of re-measuring because I’d updated to Ubuntu 11.04 and the newer GCC.

  5. Isaac Gouy says:

    1) From the top five at 2007 to the 14th on 2011

    The reason those tables don’t show a ranking number against each language is to discourage people from making a such bogus comparison!

    The ranking number will change without any change in the performance measurements, simply because we added or removed some other language from the measurements.

    2) Notice that the benchmarks game website provides 4 sets of up-to-date measurements – 2 of those use quad-core and some of the Free Pascal programs do not take advantage of multicore but the C++ programs do.

    3) C# and Java, both interpreted languages

    No – those implementations of C# and Java are JIT compiled. Interpreted Java is about 20 times slower than JIT Java.

  6. Robot says:

    sulit dipercaya interpreted language mengalahkan native. btw tes itu fair gak ya ?

  7. kechjo says:

    Interesting. I was just checking a program with a lot of loops and FPC 2.6.0 is a bit slower than GCC 4.6.2. But still, it’s *much* faster than an old 1.0.6 I have around. So, everything is getting faster, but FPC not as much as other things. Just imagine how slow things used to be.

  8. Daily programming techniques for all developers….

    […]Which programming language is best? « Bee.ography[…]…

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: