| Go | … |
|---|---|
| Paradigm | Multi-paradigm: concurrent, imperative, functional,1 object-oriented23 |
| Designed by | Robert Griesemer Rob Pike Ken Thompson4 |
| Developer | Google5 and contributors |
| First appeared | November 10, 20096 |
| Stable release | 1.27.17 / 1 September 2026 |
| Typing discipline | Inferred, static, strong,8 structural,910 nominal |
| Memory management | Garbage collection |
| Implementation language | Go, Assembly language (gc); C++ (gofrontend) |
| OS | DragonFly BSD, FreeBSD, Linux, macOS, NetBSD, OpenBSD,11 Plan 9,12 Solaris, Windows |
| License | 3-clause BSD13 + patent grant14 |
| Filename extensions | .go |
| Website | go.dev |
| Major implementations | … |
| gc, gofrontend, gold | … |
| Influenced by | … |
| C, Oberon-2, Limbo, Active Oberon, communicating sequential processes, Pascal, Oberon, Smalltalk, Newsqueak, Modula-2, Alef, APL, BCPL, Modula, occam | … |
| Influenced | … |
| Crystal, V | … |
(echo:: @ ᯤ)
Footnotes
-
“Codewalk: First-Class Functions in Go”. Go supports first class functions, higher-order functions, user-defined function types, function literals, closures, and multiple return values. This rich feature set supports a functional programming style in a strongly typed language. ↩
-
“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. ↩
-
“Go: code that grows with grace”. Retrieved June 24, 2018. Go is Object Oriented, but not in the usual way. ↩
-
“Language Design FAQ”. The Go Programming Language. January 16, 2010. Archived from the original on July 28, 2025. Retrieved February 27, 2010. ↩
-
Claburn, Thomas (April 5, 2022). “Google now requires two staff to sign off each Go change”. The Register. Retrieved August 20, 2026. ↩
-
Griesemer, Robert; Pike, Rob; Thompson, Ken; Taylor, Ian; Cox, Russ; Kim, Jini; Langley, Adam. “Hey! Ho! Let’s Go!”. Google Open Source. Retrieved May 17, 2018. ↩
-
“Release 1.27.1”. September 1, 2026. Retrieved September 2, 2026. ↩
-
“The Go Programming Language Specification”. The Go Programming Language. Archived from the original on August 13, 2025. ↩
-
“Why doesn’t Go have”implements”declarations?”. The Go Programming Language. Archived from the original on July 28, 2025. Retrieved October 1, 2015. ↩
-
Pike, Rob [@rob_pike] (December 22, 2014). “Go has structural typing, not duck typing. Full interface satisfaction is checked and required” (Tweet). Archived from the original on April 7, 2022. Retrieved March 13, 2016 – via Twitter. ↩
-
“lang/go: go-1.4”. OpenBSD ports. December 23, 2014. Retrieved January 19, 2015. ↩
-
“Go Porting Efforts”. Go Language Resources. cat-v. January 12, 2010. Retrieved January 18, 2010. ↩
-
“Text file LICENSE”. The Go Programming Language. Archived from the original on July 16, 2025. Retrieved October 5, 2012. ↩
-
“Additional IP Rights Grant”. The Go Programming Language. Archived from the original on March 30, 2025. Retrieved October 5, 2012. ↩