This is a creation in Article, where the information may have evolved or changed.
Dave Cheney, a participant in go, puts forward some new insights into why the go language is becoming more popular today.
See the original: Go ' s Language Design Leaves Others Behind
Cheney points out that most modern languages are based on simplicity, but seldom achieve a strong goal, and he argues that the clumsy syntax of complex languages is actually using "expressive" words to obscure them, and these complex languages do not directly admit that they fail in simple and direct terms.
Most languages initially aim to be simple, but when they try to incorporate the same features of previous languages, they lose their simple goals, and as a new language they often face the pressure to replace the previous language, becoming a subset of those languages that have been replaced by a target of these new languages ( BANQ Note: As in the JVM language like Black Scala, the result has been a Baroque style (Banq Note: flashy), where we see unnecessary complexity everywhere in other languages.
Cheney that a new language should be refined, not simply to replace the old language, but to learn from the mistakes of previous languages.
Why is the go language different from the previous language? First, it leaves the pre-language conventions, or, by convention, these conventions are meaningless, and go succeeds simply by throwing them away, equivalent to adding new features (Banq Note: Less means more, minus means increasing). Second, the go language allows programmers to build a solid foundation, Cheney using quicksand metaphor for other languages, for decades these cumbersome languages have built a large architecture on quicksand, and the foundation is not simple or solid.
You can't add a simple thing afterwards, simply throw something away before you get it.
Inventing an understandable language doesn't mean making it easy, but letting it go straight. Cheney Some examples, such as restricting the number of grammars to be easy for experienced programmers, and avoiding alienating new programmers.
Cheney believes that the need for simple programming today is self-evident, Rob Pike, a creator of the go language, says that the go language is not a group work from a committee, but rather a distillation of Ken Thompson, Robert Griesemer and his own experience. " All experienced programmers agree that there is no need for extra garbage in go, that go is simple design, simplicity is its original feature, not a secondary feature.
Cheney also talked about the benefits of go in working with large teams.
Cheney that go adheres to the philosophy of Unix: Simple and sharp, combined to accomplish more complex tasks. More importantly, to accomplish the task that the original author of the language did not think of, the go package can interact with each other through a simpler interface, which is simpler and less restrictive and composable than Java or C + +, leading to a simpler implementation.
Cheney also explains the strong position of the go language in the container container process market (Docker).
Finally, he said, the go language is suitable for programmers who are willing to do things well.