Admittance Of Imperfection
One of the traits I admire most about Bjarne Stroustrup is that he’s not afraid to look “imperfect” and point out C++’s weaknesses in certain application contexts. In his “Technical Report On C++ Performance“, Mr. Stroustrup helpfully cautions real time programmers to think about the risks of using the unpredictable/undeterministic features of the language:
Of course, C++ antagonists are quick to jump right on his back when Bjarne does admit to C++’s imperfections in specific contexts: “see, I told you C++ sux!“.
Here’s a challenge for programmers who read this inane blog. Can you please direct me to similar “warning” clauses written by other language designers? I’m sure there are many out there. I just haven’t stumbled across one yet.
Categories: C++
Bjarne Stroustrup, c++, linkedin, postaday2011, programming



Java has the same problems, but no programmer can “disable” them, as RTTI, Exceptions and Free Store usage are mandatory. The same goes to other languages (PHP, Ruby, etc.etc.etc.). Stroustrup’s advice is not a “C++ only” related.
Hi Adolfo,
It’s not really a problem if you can turn off and/or not use all non-deterministic features of a language. As you point out, when your app “context” requires that you turn them off and you can’t because they are baked into your language of choice, then you’ve got a problem. In that case, the choice becomes: fail down the road and switch languages; or switch languages now and have a chance of success down the road.