back to article What's all the C Plus Fuss? Bjarne Stroustrup warns of dangerous future plans for his C++

Earlier this year, Bjarne Stroustrup, creator of C++, managing director in the technology division of Morgan Stanley, and a visiting professor of computer science at Columbia University in the US, wrote a letter inviting those overseeing the evolution of the programming language to “Remember the Vasa!” Easy for a Dane to …


  1. shaunhw

    stroustrup sounds like a C ansii string function!

    The man is right. Leave C++ alone, it doesn't need anything else adding for the sake of it.

    If they want an extended version with new features give it new name.

    1. onefang Silver badge

      "If they want an extended version with new features give it new name."

      Hmm, C+=2, ++C, D (Oops, taken already), CPLusPLus (from BCPL, the grand daddy of C++), CRAP++, I could go on...

      Though given my above declaration for hating all languages beginning with P, continuing the BCPL -> B -> C tradition and calling it P will just get right up my nose.

  2. amanfromMars 1 Silver badge

    No need to reinvent the wheel ... but there are always leading improvements to be made for markets*

    There are no major decisions I regret, though there is hardly any feature I wouldn’t do somewhat differently if I had to do it again. .... Bjarne Stroustrup

    Exercise that easy option and invent a much more formidable scripting tool leading machines towards goals delivering invincibility with increased markets share of derived product.

    Anything else surely has one polishing a turd rather than displaying a diamond in the raw?

    * For example ..... Not quite reinventing the wheel, but ...

  3. Anonymous Coward
    Anonymous Coward

    B is right

    Although, one can wonder why is he late?

  4. CodeBlaster

    C++ vs C

    Coming from an assembly language background (6502 and 68000) back in the day, I decided that it was time to learn how to code in C/C++. This was back in the early 90s - I was a games programmer and the move from the Amiga to the PC meant that I had to learn how to code in this "new" high level language. Having bought a number of C++ books, it was an uphill struggle and I decided to just learn C, giving myself the option to learn C++ if I needed it in the future. I taught myself C in 2 weeks using an excellent disk/book set called "Master C". To prove to myself that I had learnt it, I wrote a crappy PC version of Galaga with assembly language for the graphics and everything else in C. No problem, it took me 3 days. I've never needed C++! I was involved in one other (PC) game back in the 90s and then got out the industry but I've written numerous complex apps in C and never felt the need for C++. In my opinion it is too much for a beginner or maybe I just wasn't intelligent enough to pick it up easily. I long for the heady days of assembly language coding - software seemed to work better back then...

    1. Missing Semicolon Silver badge

      Re: C++ vs C

      There are two things wrong with C++

      1) Spooky hidden code. Due to the horrors that are overloaded operators


      Is completely incomprehensible. If a and b are instances, the actual code is presumably in the overloaded operator+ for the class of a. Then, it must create a temporary a on the stack, before using the copy constructor to make c. So, if there are side effects in the constructors, all sorts of shizzle goes on. Plus it can eat up loads of stack.

      And, the whole mess was just to make sure that strings are not special objects, but you can still write


      The world already has Perl as a write-only language. It doesn't need another one.

      2) The utterly crap reference book. Everyone worships Stroustrup, but the book is utterly useless for learning to write real-life code. It always shows stuff as definitions, ans rarely describes how to separate declaration and definition - the way you always work. The descriptions of the various features are a hymn to how clever they are, not a careful description of the use, abuse, and side effects.

      1. onefang Silver badge

        Re: C++ vs C

        "The world already has Perl as a write-only language. It doesn't need another one."

        The world already has several write only languages, you left out APL and Whitespace. I think there is a few more to.

  5. martinusher Silver badge

    Been there.....done that.....

    Back in time there was a family of languages called Algol. They're the grandparents of the block structured language, its where you'd first find curly braces and semicolons. A very popular version was the 1960 model, Algol 60, which worked but had a few imperfections. These were fixed for the version Algol 68. It was a superb language with just one slight snag -- it was effectively unimplementable on the machines available at that time. Various implementations were made but most were panned as impure, not worthy or whatever.

    C++ is in danger of going down the same rabbit hole -- if it isn't lost already. Its worse for us because at least all Algol sprung on us was a "Revised Report...", a well thought out theoretical document. C++ started off as an incremental improvement to a systems programming language (one that should never have been used to write user applications in), it gained wide currency because it just happened to be a useful shorthand for writing GUI applications in, it got widely taught and so it just morphed and morphed like the terror from some naff 50s sci-fi movie. Common sense, please -- some of us have do deal with the fallout from people who know all about how to write object oriented programs (but wouldn't necessarily know an object if they tripped over one...). This language has caused me so much grief over the years that if I'm in a position to make the decision I'll ban it (embedded programming and poor quality C++ are a particularly noxious combination!).

  6. Stjalodbaer

    No more tinkertoy pseudo-languages

    We don’t know what the language of 2020 will look like, but it will be called Fortran.

    But we’d like it to be ML.

  7. Anonymous Coward

    Eh I refer Pascal and Delphi

    I can not understand why people have to override so many internal elements in C.....

    they still have to include code in their program so just write another module.

  8. Libertarian Voice

    It's not the features, it is how you use them that counts!

    I write a lot of code in C++ that has to interface with C libraries and do not have the time nor inclination to create wrappers for every library as I would never get any work done. This is what happens in the real world; most companies are not prepared to pay you to write wrappers and would much rather employ programmers that have a reasonable understanding of C and can use it withing C++ programs and find workarounds where necessary.

    The problem with c++ is not the code itself (you either use STL features or you don't, it is up to you); it is the evangelists who insist that you should write everything using strict OOP and every single available feature to write a hello world program.

    The good thing about the STL is that it can save an awful lot of documentation if used properly, and OOP too has its place. Where I start to get a little annoyed with cpp is its determination to hide or mess around with what are basically pointers just for the hell of doing so, it makes no sense and over complicates things unnecessarily.

    I like the language, I like the features and I like the fact that I can still use C code quite comfortably within, should the need arise or should it make the code more readable (which in many cases it does).


POST COMMENT House rules

Not a member of The Register? Create a new account here.

  • Enter your comment

  • Add an icon

Anonymous cowards cannot choose their icon

Biting the hand that feeds IT © 1998–2019