4 ms·
> geniuses That's very strong language. Go was created by some smart people that have completely ignored programming language developments that happened after
by EnergyAmy 3y ago
> geniuses
That's very strong language. Go was created by some smart people that have completely ignored programming language developments that happened after the 70's.
- lambda_garden 3y agoIronically, we had more advanced languages than Go in the 70s.
- Ferret7446 3y agoAdvanced != good. It takes some genius to realize that.
- Cthulhu_ 3y agoYeah, but advanced languages are also a problem for long-term maintainability. Remember, Go was developed at Google - jokingly, while waiting for stuff to compile. They deal with tens of millions of lines of C++ written by thousands of engineers with varying skill levels and career paths. The advancedness of C++ did not reduce the compile times or readability of the code. At those scales you can't rely on being familiar with a particular section of code; you need to be able to drop in anywhere and know what's going on, without having to learn which subset of the advanced language they used for that particular feature. Go is not advanced by design.
- lambda_garden 3y agoAdvanced languages can compile quickly - it depends on the feature set chosen. For example, do-notation is an advanced feature not found in most languages, but it compiles quickly as it is syntactic sugar. Operator overload, on the other hand, might require a solver and thus compile slower. It's not a particularly advanced feature, however. Binary optimization passes do not make the language any more advanced (on the user side), but will slow down compilation. Advanced design and compile-times are pretty orthogonal. As for maintainability, it's not clear to me that reams of imperative code is easier to maintain than something terse and declarative. In fact, probably the opposite.
- bufio 3y agoMaybe you could educate them.
- cogman10 3y agoYup. Go made a lot of odd choices from a language design perspective. It's pretty much "C, but with better types and a garbage collector!" It certainly has its usages and does some nice things. But at the same time, the obsession with compile speed has, IMO, has been a detriment to the language as a whole. We see this in the way generics ultimately entered go after years of causing problems by not existing from the get-go.
- aforwardslash 3y agoI'd say that the hands-down improvement over C is simplified threading and proper utf8 support. The utf8 alone (because of the notion of rune) is a good reason to use golang over C or C++.