In Praise Of C++ Bjarne At ICPC
Written by Mike James   
Sunday, 04 August 2013

The ICPC is a programming competition held every year for universities worldwide. This year the inventor of C++, Bjarne Stoustrup, was interviewed about the suitability of this language for competition purposes.  

The ACM International Collegiate Programming Contest is a big deal if you are a university student studying computer science. Sponsored by IBM, the idea is that teams solve lots of problems and the team that solves the most wins.

If you look at the history of the competition, it looks as if the US dominates with 18 wins compared to the next best, Russia with 8 wins. However this doesn't take into account the fact that for the first ten years of its life the competition was mainly among teams from the US and Canada. When you notice that the US hasn't won since 1997, then Russia's 8 wins, including 2013, begins to make the competition look a little more open.

The nature of  the competition, approximately 8 problems to be solved using one computer shared between a team of three, puts a lot of pressure on participants to stay calm and use a language that delivers. 

Bjarne, well known for his opinion that C++ is the best language to teach computer science, is clearly also of the opinion that C++ is the best for such pressurized competitions. Listen to what he has to say:

 

 

Who could argue with:

"If you use plain C you end up with something slightly too low level."

"Java just gets you far too far away from the machine.... too much indirection, too much convoluted thinking."

It seems the C++ is just right - the Goldilocks language.  

There is a lot of truth in this. As C++ contains C you can work at the lower level where the machine's hardware becomes visible. Given it is an object-oriented language, you can also use the big academic ideas of program organization. 

There are, however, many unmentioned problems with C++. It is flexible enough for you to write code that is completely opaque. Development using it is also slowed by the need to compile it before you can see what it is doing. My own choice for a competition would be Python - but any dynamic language, Ruby or even JavaScript, would do. 

Finally who could argue with the sentiment that code is not boring:

"code is where the rubber hits the road".

 

icpcnewslogo

More Information

ICPCNews

Related Articles

Which Languages Have Most Influence?

The Top Languages of 2012

A Recursive Interview With Bjarne Stoustrup

 

To be informed about new articles on I Programmer, install the I Programmer Toolbar, subscribe to the RSS feed, follow us on, Twitter, FacebookGoogle+ or Linkedin,  or sign up for our weekly newsletter.

 

raspberry pi books

 

Comments




or email your comment to: comments@i-programmer.info

 

Banner


SnapCode: A Java IDE for the Web
27/02/2024

Thanks to CheerpJ and WebAssembly you can now run a Java IDE inside your browser and local first.This is SnapCode, and while lightweight and in-browser, is to be not underestimated.



We Built A Software Engineer
20/03/2024

One of the most worrying things about being a programmer today is the threat from AI. It has gone so far that NVIDA CEO Jensen Huang proclaims that you really shouldn't start training as a programmer  [ ... ]


More News

Last Updated ( Sunday, 04 August 2013 )