With regards to momentum I don't think it's really relevant. C++/CLI (wish it had a simpler name C##?) has a niche which I think raises it above considerations of momentum. Importing some win32 api functions is one thing but when you get to the point where you need to expose a managed api to a high performance native system you accept no substitutes. As to C# being de facto, it's a funny situation. I feel that way too yet I always seem to run into VB developers and hear about VB in person. So the reality and the media disagree in my area. At first I thought that Visual Basic was the CLS compliant language. No unsigned ints, no signed bytes, no pointers. But it wasn't until very recently that I finally realized that I had it backwards. C# IS the least common denominator. Pointers aside there are probably more VB-specific language features than C# features. They aren't always significant but for about 50% of the common scenarios there's a C# way, a VB translation of that way, and a VB specific way. So naturally if you want a code sample to be stripped to its barest you'd put it in C#. As far as being closer to the metal, it's all IL and I've disassembled enough methods to see that in the end equivalent code (if you know what that is) is generally equivalent in on the IL side. I don't honestly think you can be closer or fit better with .NET. You really fit or you don't. Besides the Microsoft Languages C++/CLI; C#; and Basic there are a host of dozens of other non MS .NET languages which we shouldn't discount. But if I had to describe a nich for each of them I'd argue that C++ is the high performance lowest level systems engineering language. Basic and C# are both Application programming languages however there are cases where you can use some of the darker C# features to squeeze an extra ounce of performance out of some method that'll be in a tight loop (though I am more likely to write the method in IL than use the heathen language!). If you need hardcore productivity, deadline tomorrow at noon, all-nighter prototyping then Basic shines there. This doesn't mean these languages are stuck in these roles (I personally think that C++/CLI is so awesome it almost negates C# and it makes me ashamed to have ever uttered the words Managed Extentions for C++) Only that that's where the language devs priorities are. Last but not least, as a .NET developer you have the easiest language transitions on the planet. You have almost no excuse for not being partially multilingual (not like you have to learn a new librar
A
ad_green
@ad_green