This article is more than 1 year old
C++/CLI: a paradigm too far
Microsoft's new albino jumbo
Stob Microsoft has been firing off some big guns in support of something called 'C++/CLI'.
The Softies would really like to lure C++ users into the suburban programming world of .NET - the .NETscape if you wish. But their previous attempt in this direction, a system called 'Managed Extensions to C++' that was composed mostly of __underscore characters, has been universally deemed resistible.
So now they've had another try, and Redmond is doing all it can to convince us that C++/CLI is the real goods. Few stops have been left in. For example:
- Here is an MSDN article by their guru, Stan Lippman, bigging it up in an article that begins with a timeline that goes nearly as far back as the discovery of the curly bracket, and cumulates with C++/CLI is the logical double-plus-good pinnacle of humankind's achievement.
- Another assault takes the form of a 'Yummy' C++/CLI paper from Microsoft's other captured C++ heavyweight Herb Sutter justifying the design. The paper is liberally larded with Bjarne Stroustrup quotes, leaving one with the impression that C++/CLI is precisely what the Progenitor himself would have done, were he lucky enough to be a Bill Gates employee. (However, this is not quite Stroustrup's position.)
- Meanwhile ECMA, the standards organisation with the unfortunate skin disease-like acronym, has hatched a C++/CLI standard from its ECMAplasm. This frees us from the peril of proprietary lock-in, because YOU can legally put together your own C++/CLI conforming compiler built out of matchsticks in your copious free time, should you so wish.
(As an aside, this last effort briefly looked like it might not come off, when a British delegation from the heavier-weight ISO C++ committee objected to the name.
'The proposed name of C++/CLI will cause unnecessary and harmful confusion' they said crossly. 'We therefore request that Ecma withdraw this document from fast-track voting and if they must re-submit it, do so under a name which will not conflict with Standard C++.'
I love that 'if they must re-submit it' bit, treating ECMA/Microsoft like a naughty child that has handed in '2/10 - see me' quality homework. And of course 'C++/CLI' will get abbreviated to 'C++'. Why else would Microsoft's marketing department sanction such an unwieldy name for a core, strategic product?
In the event, ECMA rapidly and politely told the Brits to get knotted, and that was that. At least the interlude affords us a pleasant insight into how standardisation works.)
Elsewhere on the Net, C++/CLI has sent various eyebrows northwards. You can Google as well as I can, but I commend this wasp's nest of a thread in the dusty attic of the comp.lang.c++.moderated newsgroup, which features a good selection the world's most senior C++ pundits chewing the matter over.
However, I can reveal that all this effort - the broodings of comp.lang.c++, the deliberations of the ECMAnites, the boastings of Microsoft itself - is all to no purpose. All these clever people have overlooked one point.
C++/CLI is a dud.