
On 11/4/2012 5:41 PM, Paul Mensonides wrote:
On 11/4/2012 2:14 PM, Cory Nelson wrote:
On Sun, Nov 4, 2012 at 3:55 PM, Paul Mensonides <pmenso57@comcast.net>wrote:
The extensions for C++/CX and C++/CLI are even worse because they actually subvert the entire language by forcing the limited .Net runtime model on the language which is a massive regression.
C++/CX is sugar for building and using Windows RT COM objects. It does not involve .NET _at all_. Not in your code and not hidden in the runtime background. Furthermore, both of them are intended for use as a bridge into the Windows platforms at the outer edges of otherwise portable, standards-compliant code. You're not supposed to use them as your primary language.
Resume (slightly more informed) venting.
I'm not uninformed. I'm generalizing because C++/CX and C++/CLI share some extensions at the syntactic level, and I'm not referring to the details of either except in that they *both* create a new type system, object model, runtime model, etc..
C++/CLI does not pretend to be C++. It is a dialect of C++ for .Net programming but nobody of any experience views this as the official C++ language. Your rant against things like C++/CLI and C++/CX is ill-founded IMO. Language vendors certainly have the right to create a new language from an existing language for their own use and their customer's use. I think you are being intolerant to think otherwise. If Microsoft has said anywhere that C++/CLI or C++/CX is standard C++ I would like to see it. There are probably few serious C++ expert programmers who do not agree with you that language vendors should support the C++ standard. But that is very different from mandating that language vendors should only be allowed to support a language standard and not be allowed to create another similar language for their own purposes. Actually C++/CLI is a very good language for .Net programming but Microsoft's support for it has been abysmal, so that it is hopeless to use it ( as opposed to C# ) for any serious largescale .Net programs or modules.