1,056 karma · joined March 19, 2012
Now at Canva. Formerly at Google (2008-2021), Stripe (2021-2022), Atlassian (2022-2024).
Work is ongoing to make golang.org be HTTPS only.
It's true that Go doesn't have a lot of those powerful JVM features that you listed, but as with any engineering trade-off there are lots of people who judge the benefits of Go to be worth the loss of those things.
go get google.golang.org/cloud/bigtableYes, the release schedule is another important reason for building our own toolchain. Being in control of one's destiny is often underrated.
Does that answer your original statement that you didn't understand why we build our own toolchain?
If you're building a new language, you need a new AST. You can't represent Go source code in a C++ AST.
There are alternate compilers for Go, in the form of gccgo and llgo. But those are both very slow to build (compared to the Go tree that takes ~30s to build the compiler, linker, assembler and standard library). And the "gc" Go compiler runs a lot faster than gccgo (though it doesn't produce code that's as good), and compilation speed is a big part of Go's value proposition.
No-one said that that point alone is worth discarding the whole approach. You're nitpicking a single bullet point from around a half dozen points that stacked up.
Gerrit is the alternative used, and contributors have a full local clone of the git repo, with their commit, and that's private on their machine until they push it to Gerrit for review.
yummyfajitas pointed out that safety has nothing to do with the issue at hand.
Your follow-up post here now raises a bunch of reasonable issues, but none of them are safety-related.