Why people always complain about Microsoft language extensions to C and C++, and yet are perferctly fine with GCC C, GCC C++, clang C, clang C++ ?!?
And I am pretty sure to have wrapped a cross-platform C++ RPC framework for .NET in 2002 while using Managed C++, somehow it even ended up in the market for a contact center CRM, go figure.
Maybe one should learn about Microsoft technologies properly instead of just bashing and writing M$.
Not only does MSIL support all the features required for a language like C or C++, mixed mode Assemblies allow to embedded native code, at the expense of being marked unsafe for the verifier. You can force pure MISL, with the side effect that some UB patterns will be considered a compile error instead.
Well, if it so easy to build vanilla C/C++ code for .NET then Microsoft is definitely doing a very poor job promoting this feature ;)
Does the cross-platform dotnet toolchain support building C/C++? I never saw this mentioned when reading about dotnet (it was always about C#).
Here is an article about Managed C++ from July 2002!
https://www.codeproject.com/Articles/1479/Introduction-to-Ma...
There are others when searching from 2002 articles.
Mono did try to port them as well,
https://www.mono-project.com/docs/about-mono/languages/cplus...
So you see, the information is out there.
That is how Mono started.
Additionally here is some historical refreshing about two other attempts,
https://www.gnu.org/software/dotgnu
https://www.codeguru.com/dotnet/net-nuts-bolts-the-joy-of-ro...
A surviving clone of the repo is available here,
https://github.com/SSCLI/sscli_20021101
Finally, this doesn't change the fact that the CLR was only yet another version of this idea, there are plenty of others since UNCOL in 1958.
I'm not saying it changes anything. Wasm is just a more modern attempt, like .NET itself. I don't see any reason to prefer one or the other only because of its age.
It is not like all those beautiful WASM implementations support the same set of features, from the paper standard,
Wasm is much newer than Mono was at the time. Let's wait.
That C++ in there is weird in a 2002 article. Did Microsoft have a C++ compiler in 2002 which supported .NET bytecode output? Up until very recently they had their own incompatible C++ dialect (don't remember what it was called) with new CLR-compatible pointer types. I'm pretty sure that it wasn't possible to just take a vanilla C or C++ library and compile it to the CLR or JVM at least around 2010 when Emscripten was first released (and from there it still was a long way to go to WASM).