4 ms·
In fact, the problem with having one single "reference implementation", like in Python, is that other implementations never get to be "compliant enough". The s
by arximboldi 11y ago
In fact, the problem with having one single "reference implementation", like in Python, is that other implementations never get to be "compliant enough".
The situation in C++ is saner, since both GCC and Clang are moving the standard forward, and together make sure that the standard can accept multiple valid implementations and code tends to be truly portable.
The problem is really simply that Microsoft was never interested, at least until very recently, to have a truly standards compliant compiler.
- Kristine1975 11y ago>The problem is really simply that Microsoft was never interested, at least until very recently, to have a truly standards compliant compiler. I think Microsoft neglected C++ over .Net before suddenly changing their minds and deciding to support C++ more. VS2010 was one of the first compilers (even before gcc/clang) to support parts of the preliminary C++0x standard (e.g. lambda functions). But when the final standard was released they fell behind in implementing it.
- bstamour 11y ago> VS2010 was one of the first compilers (even before gcc/clang) GCC supported C++0x features back when they thought the standard would be released before 2010. Hence the 0x, not 1x. I remember using the `-std=c++0x` flag back in 2008, when I first took a course on C++, which is a few years before VS2010.
- jcranmer 11y agoI don't think it's that they weren't interested as much as it was that the team they had was relatively small and their compiler needed a massive refactoring to get there. MSVC never even built an AST for processing!