3 ms·
> Do people also like "diversity" in C++ compiler implementations Not a C developer (and welcome C devs to chime in here) but my understanding is yes. People w
by nailer 4y ago
> Do people also like "diversity" in C++ compiler implementations
Not a C developer (and welcome C devs to chime in here) but my understanding is yes. People were really happy when we went from GCC as being the standard compiler to LLVM.
> the diversity of Python interpreters?
Yes, back (a decade ago) when I used to hack Python it was pretty cool to be able to get IronPython and re-use a bunch of .net assemblies in a language I liked.
Right now in TypeScript land people are enjoying deno provide competition to node.
- gerash 4y agoFor the GCC and Clang it's a case of a newer/better compiler architecture taking over an older one. At no point in time I see the advantage of keeping several implementations around just for the sake of "diversity".
- nailer 4y agoDoesn't the new implementation have a better architecture? Isn't architecture the point they diverge?
- WorldMaker 4y agoIf it were just unequivocally "newer/better architecture" they wouldn't coexist side-by-side in the first place, one would have entirely replaced the other by now. Obviously, the differences between the two are much more complex than that. One reason they are expected to coexist for some time to come is exactly that a lot of Linux (in particular) applications and libraries require gcc specifics. The fact that there are "gcc specifics" that lock those applications and libraries to gcc and can't just "upgrade to the obviously newer/better architecture" is itself an argument for "diversity". C/C++ is "supposed to be" a portable language. If developers were keeping to standards and if clang were indeed objectively better architecture, then nothing should still be using gcc, right? Diversity is one way you encourage developers to stick to portable standards (because then they can use whichever compiler is fastest/better today and switch at-will as all the implementations compete to outperform each other).