Go
C / CSP family · 2009Actively developedA small language for building concurrent services and practical tools.
Procedural · Concurrent
Links
- Homepage
- https://go.dev/
- Reference / standard
- https://go.dev/ref/spec
- Announcements
- https://groups.google.com/g/golang-announce
- Project blog
- https://go.dev/blog/
- Wikipedia (English)
- https://en.wikipedia.org/wiki/Go_(programming_language)
Tracked release
- Version
- 1.27.3
- Artifact
- Compiler / toolchain
- Published
- 2026-10-19
- Source checked
- 2026-10-22
Use & ecosystem
- Suited for
- Web backends, CLI tools / automation, Distributed services
- Family / tradition
- C-style
- Maturity
- Established
- Ecosystem breadth
- Broad
A stable compatibility policy and sustained independent use in network services, infrastructure and developer tooling support Established. Maintained integrations span those application areas; Broad does not imply parity with specialist GUI or numerical ecosystems.
Industry & practical use
Go is established in cloud infrastructure, network services, web backends and developer tools. Its official use cases emphasize services, command-line programs and operations tooling. It is less centered on rich client UIs or hard real-time software.
Compilers, libraries & tooling
The main Go toolchain integrates building, testing, formatting and modules. The standard library includes substantial networking support. Pure-Go applications often have straightforward deployment; cgo and native libraries add platform-specific build and packaging requirements.
Platforms & deployment
- General toolchains
- Linux, Windows, macOS
- Specialized tooling
- Browser, Android, iOS
- Browser execution
- WebAssembly
- Native cross-compilation
- Established toolchains
The main toolchain targets Linux, Windows and macOS, plus additional operating systems. Browser execution uses js/wasm. Android and iOS targets exist, but native mobile UI integration needs additional tooling and platform SDKs; a target entry is not a complete app framework.
For supported pure-Go targets, GOOS and GOARCH select the target independently of the build host. cgo changes the situation: it needs a suitable C cross-compiler and target libraries, and is disabled by default when cross-compiling.
Project health & support
Go is an open-source project originating at Google, with an ongoing Google engineering team and outside contributors. Its Go 1 compatibility policy prioritizes source compatibility, with documented exceptions. Toolchain releases and security support still require regular upgrades.
Use, ecosystem & platform assessment reviewed 2026-10-22 · Sources below
History & origin
Go was designed at Google starting in 2007 and publicly released in 2009. Its designers focused on manageable software at scale, fast builds and concurrency. Go 1 established a compatibility promise in 2012.
- Creators
- Robert Griesemer, Rob Pike, Ken Thompson, Google
- Origin
- 2009 — First public appearance; earlier development is noted below.
Influences & descendants
Influenced by
Influenced in this catalogue
- No linked entries yet.
Language features
- Typing
- Static
- Execution
- AOT
- Block structure
- Explicit delimiters
- Semicolons
- Automatically inserted
- Lexical closures
- Yes
- Namespaced modules
- Yes
- Pattern matching
- No
- Macro system
- No built-in macro system
Implementation notes
- Semicolons are part of the grammar but are usually inserted automatically.
- Goroutines and channels support concurrency; packages provide qualified names.
- The standard toolchain compiles ahead of time and uses garbage collection.
Sources & references
- Language reference
- https://go.dev/ref/spec
- History and background
- https://go.dev/doc/faq
Use, ecosystem & platform sources
- Documented use cases
- https://go.dev/solutions/use-cases
- Project and tooling
- https://go.dev/doc/faq
- Compatibility policy
- https://go.dev/doc/go1compat
- Target combinations
- https://go.dev/doc/install/source
- cgo cross-compilation
- https://pkg.go.dev/cmd/cgo
- Browser WebAssembly
- https://go.dev/wiki/WebAssembly
See the classification definitions for implementation-dependent features. Influence links cover the entries documented here.