P/Invoke and stuff like that is unopensourcable. The run time is way too deeply embedded in COM and the registry for its own good.
This move could have outright killed java in 2006 when the .NET 2.0 was way ahead of java in everything. Right now - I am not so sure it will be such a big thing.
(Disclaimer - haven't touched serious project in 4-5 years in .NET but I loved C# and the libraries)
Funny, but P/Invoke seems to work great on Linux with Mono... it's probably the single biggest reason I started out with it, as JNI by comparison is an ugly beast.
I love a lot of what C# and .Net have to offer, even though half of my server-side dev time is in node.js for the past couple years, I still like a lot of .Net ... It will be really interesting to see where things go in the next couple of years. I think unchaining VS and Office from Windows would be the best move MS could make right now. Web Matrix (with an extension) is imho second best dev environment for node.js out there, and that they haven't integrated this into VS really surprises me.
MS put a lot of effort into libuv, so not sure why they wouldn't get the runtime system that uses it up to speed better.
The BCL in .Net are second to none in terms of breadth and comprehensiveness. I feel that if MS really opened up most of .Net in MS-PL or something similar, it could really gain ground outside of windows... Again, this would mean getting VS and Office away from the windows anchor.
This move could have outright killed java in 2006 when the .NET 2.0 was way ahead of java in everything. Right now - I am not so sure it will be such a big thing.
(Disclaimer - haven't touched serious project in 4-5 years in .NET but I loved C# and the libraries)