MIT Technology Review: An Interview With Bjarne Stroustrup

Sean Kelly sean at f4.ca
Tue Dec 5 11:24:35 PST 2006


Jarrett Billingsley wrote:
> "Pragma" <ericanderton at yahoo.removeme.com> wrote in message 
> news:el489h$1f7a$1 at digitaldaemon.com...
>> Something I ran into that the group might enjoy:
>>
>> From: http://www.techreview.com/InfoTech/17831/
>>
>> "Bjarne Stroustrup, the inventor of the C++ programming language, defends 
>> his legacy and examines what's wrong with most software code."
> 
> Bjarne: "There are just two kinds of languages: the ones everybody complains 
> about and the ones nobody uses."
> 
> And for C++ programmers, those are the same languages.  ;)
> 
> When will Bjarne see that C++ is a festering homonculus of a language from 
> which pours forth a black bile of rot and putrescence?  Okay, maybe I'm 
> being a bit hyperbolistic, but.. 

In Bjarne's defense, I think it's worth noting two things:

* The success of C++ was very much dependent on its acceptance by the C 
community, and C compatibility was crucial.  Many of the language and 
syntax compromises were for very legitimate reasons at the time the 
language was designed.

* Bjarne quite unapologetically designed C++ for expert programmers.  It 
isn't his fault that the language has become so popular that it is now 
being used by people who can't tell the dull side of a pointer from, 
well, the pointy side.

There is no debating the fact that C++ has been an incredible success, 
and it still has very little competition in many core markets. 
Personally, my only real problems with the language are that its 
popularity has driven it to be used in projects and by people where 
another language would be more suitable, and the language supports such 
a wide array of programming styles that it is extremely difficult to 
maintain any kind of design coherence in large team projects.  Also, its 
age is such that many projects contain code written before templates 
even existed, and so a substantial codebase follows "old style C++" 
which is heavy with raw pointers, casts, etc.  In fact, I'm continually 
amazed at how little new code I see even today that is written using STL 
components.  IMO this is a strong argument for D's built-in dynamic 
array support and other features, as there is no doubt in my mind that 
one of the major problems with C++ is that the language was standardized 
and in use before the library was up to snuff.  By integrating these 
features into the core language, Walter has neatly sidestepped this 
problem and provided a nice, clean syntax for some of the most commonly 
used programming constructs.


Sean



More information about the Digitalmars-d mailing list