Cee Plus Plus Isa Failure

It is not true that SmalltalkIsaFailure but it is true that CeePlusPlusIsaFailure (although it is unfortunately widely used).

All of that agony - ConstCorrectness, StlStyle, and a vast swag of MS and OS libraries maintained for generations and generations on the premise of safety and reusability ... all for what? All so it can all be junked sometime in the future and rewritten in something simpler.

PythonLanguage, RubyLanguage, JavaLanguage, CeeSharp - these are the languages of the future. Well, maybe not Java. But every one of them is heavily SmalltalkLanguage influenced. Smalltalk itself is on the rise again with frameworks like SeasideFramework.

And AlanKay is revered by all while BjarneStroustrup is out in some parking lot dictating the C++ Reference Manual Version 5 into his beard. Ladies and gentlemen, CeePlusPlus has left the building.


JavaLanguage is SmalltalkLanguage influenced? CeeSharp will outlive JavaLanguage???

BWA-HAHAHAHA! --PhlIp


Without commenting on the merits of C++ vs Smalltalk (far too much ink has been spilled, and bits allocated to that HolyWar, that I need not continue it here), but the belief that C++ is now relegated to legacy work, defenc/se, etc. is flat-out laughable.

If anything, C++ is enjoying a renaissance. Part of that is due to the maturation of C++ toolchains (which now support the whole ANSI standard), part of that is due to the advantages of TemplateMetaprogramming and the numerous libraries (BoostLibraries, BlitzPlusPlus, DaixtroseLib) that can take advantage. Part of that is due to the fact that C++ programmers these days can easily link in garbage collecters, should they choose. And <flame>part of that is due to the herds of one-star programmers in IT shops round the world now writing their CrudScreens in Java and C#.</flame>.

C++ is alive and well. As are the numerous Smalltalk-derived languages you mention above. Which is a good thing; C++ and Python are intended for, and good at, very different things. If you don't like C++, of course, you've plenty of other excellent choices. But C++ remains a viable choice for those applications for which it is suitable (and there are many!), and/or for those programmers who prefer it.

Long live diversity!


While C++ does remain a viable option for those applications for which it's suitable, it's also true that applications for which C++ is more suitable than PythonLanguage, RubyLanguage, JavaLanguage, CeeSharp and Smalltalk continues to shrink at an ever increasing rate. However, long live diversity, there will always be a place for C++ to shine, however small it may be. But to say C++ is enjoying a renaissance, is stretching reality beyond the breaking point.

Agreed; MooresLaw has all but kicked C++ out of the data center--a place it was a poor fit in the first place (due to a combination of constantly changing requirements, piecemeal deployment, highly I/O and GUI-centric applications, etc.) C++ remains an excellent choice for systems programming, embedded systems work, etc... and the C/C++ family is mounting a strong challenge to FortranLanguage in high-performance numerical computing. At any rate, HorsesForCourses and all that.

Currently every single game is written in C++, often with parts of it in an embedded scripting language. Just suggest to a game developer that he be using anything more "dynamic", and you'll be laughed out of the building (and then some). For a good reason.

There is a need for a lightweight, compiled language close to the machine. C is that language, but it doesn't scale well. C++ is an attempt to build on C. It is definitely a success as an experiment, parts of it are also a success in practice (yes, const correctness, an improved static(!) type system and the whole STL are good things), while other parts are simply crap (either because of C legacy, because of DesignByCommittee or because of oversight). Defining a new language based on lessons from C++ might be a good idea.

And don't forget, holy wars have always been a poor substitute for brains. "Smalltalk is superior to C++!!!" with get you into hot water sooner or later, as will "C++ rulez!!!". Any language without a foreign function interface (or with a poor one) is a dead end, and exactly the same goes for programmers.


Its the only mainstream, mature language that gives decent performance. The key is to write various bits of the system in the right languages (eg scripting, guis in vb/c#/java etc)


CategoryRant CategoryCpp


EditText of this page (last edited October 25, 2009) or FindPage with title or text search