===== Google: Go (software language) ===== [[dido:public:ra:xapend:xapend.b_stds:defact:google:start| return to Google page ]] **Source: [[https://golang.org/doc/faq#go_or_golang | The following is from the ''Golang.ord'' site ]]** : //The language is called Go. The "golang" moniker arose because the web site is golang.org, not go.org, which was not available to us. Many use the golang name, though, and it is handy as a label. For instance, the Twitter tag for the language is "#golang". The language's name is just plain Go, regardless.// : //**Note:** Although the official logo has two capital letters, the language name is written __Go__, **__not__ GO**.// : //Go was born out of frustration with existing languages and environments for the work we were doing at Google. Programming had become too difficult and the choice of languages was partly to blame. One had to choose either efficient compilation, efficient execution, or ease of programming; all three were not available in the same mainstream language. Programmers who could were choosing ease over safety and efficiency by moving to dynamically typed languages such as Python and JavaScript rather than C++ or, to a lesser extent, Java.// : //We were not alone in our concerns. After many years with a pretty quiet landscape for [[dido:public:ra:xapend:xapend.a_glossary:p:programlang|programming languages]], Go was among the first of several new languages—Rust, Elixir, Swift, and more—that have made programming language development an active, almost mainstream field again.// : //Go addressed these issues by attempting to combine the ease of programming of an interpreted, dynamically typed language with the efficiency and safety of a statically typed, compiled language. It also aimed to be modern, with support for networked and multicore computing. Finally, working with Go is intended to be fast: it should take at most a few seconds to build a large executable on a single computer. To meet these goals required addressing a number of linguistic issues: an expressive but lightweight type system; concurrency and garbage collection; rigid dependency specification; and so on. These cannot be addressed well by libraries or tools; a new language was called for.// : //The article [[https://talks.golang.org/2012/splash.article | Go at Google]] discusses the background and motivation behind the design of the Go language///