By creating a standard, and allowing multiple implementations, someone creating a new OS or a new CPU architecture can create their own implementation of the language without having to wait for anyone else to deign to create the port.
Maybe a new implementation won't compile very fast, or produce great code, or it might not even catch all the incorrect constructs that it ought to. But if it can make all the existing code written in that language suddenly available for the new platform, that platform instantly becomes orders of magnitude more useful and powerful.
> How hard is it to write C++20 code that will compile with all major compilers on all major OSs?
That depends on the code. You want to compile Firefox? You might be out of luck.
You want to compile curl? Based on how portable it already is, chances are it might work out of the box once you've got a libc implementation working.
You want to compile Gnu bash and coreutils, to get a basic Posix shell environment up and running? It might be a bit of work, but easier than having to reimplement a whole userland from scratch.
> But please explain how Python and Go managed to succeed with one impl.
It's not that the language can't succeed - at least, not on popular platforms that the devs are interested in targetting. It's that those devs get to dictate which platforms are even capable of making use of the software written in those languages.
And that just rubs me the wrong way.