User Tools

Site Tools


Sidebar

Welcome to DIDO WIKI

dido:public:ra:xapend:xapend.b_stds:defact:google:go

Google: Go (software language)

return to Google page

Source: 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 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 Go at Google discusses the background and motivation behind the design of the Go language/
Table 1: Data Sheet for Go.
Characteristic Value
Paradigm Multi-paradigm: concurrent, functional,1) imperative, object-oriented 2)3)
Typing Inferred, static, strong, structural4)5)
Original author(s) Robert Griesemer, Rob Pike, Ken Thompson
Developer The Go Authors6)
Initial release 10 November 2009
Stable release 1.12.5 / May 6, 2019;7)
Repository https://git.kernel.org/pub/scm/git/git.git/
Written in Go, assembly language (gc); C++ (gccgo)
Operating system DragonFly BSD, FreeBSD, Linux, macOS, NetBSD, OpenBSD,8) Plan 9,9) Solaris, Windows
Available in English
Type Version control
License BSD-style10) + patent grant11)
Website https://golang.org/
1)
“First-Class Functions in Go”. Retrieved November 14, 2018. Go supports … a functional programming style in a strongly typed language.
2)
Is Go an object-oriented language?“. Retrieved April 13, 2019. Although Go has types and methods and allows an object-oriented style of programming, there is no type hierarchy.
3)
“Go: code that grows with grace”. Retrieved June 24, 2018. Go is Object Oriented, but not in the usual way.
4)
“Why doesn't Go have “implements” declarations?”. golang.org. Retrieved October 1, 2015.
5)
Pike, Rob (December 22, 2014). “Rob Pike on Twitter”. Retrieved March 13, 2016. Go has structural typing, not duck typing. Full interface satisfaction is checked and required.
6)
Text file LICENSE”. The Go Programming Language. Google. Retrieved October 5, 2012.
7)
“Release History - The Go Programming Language”. Retrieved April 19, 2019.
8)
“lang/go: go-1.4 – Go programming language”. OpenBSD ports. December 23, 2014. Retrieved January 19, 2015.
9)
“Go Porting Efforts”. Go Language Resources. cat-v. January 12, 2010. Retrieved January 18, 2010.
10)
Text file LICENSE“. The Go Programming Language. Google. Retrieved October 5, 2012.
11)
Additional IP Rights Grant”. The Go Programming Language. Google. Retrieved October 5, 2012.
dido/public/ra/xapend/xapend.b_stds/defact/google/go.txt · Last modified: 2021/11/09 15:41 by char
Translations of this page: