Go Glossary

Browse 23 go terms defined in plain English, from the cultural dictionary of computing.

23 Go Terms

Channel
A typed conduit through which goroutines or concurrent processes can send and receive values, providing synchronized communication without explicit locks....
Context
A mechanism for passing request-scoped values, cancellation signals, and deadlines across API boundaries and goroutines. In Go, context.Context is threaded...
Defer
A Go language keyword that schedules a function call to be executed when the enclosing function returns, regardless of how it returns (normal return, panic, or...
Go Channel
A Go Channel is a development concept used to shape how software is built, executed, or maintained in real systems. Developers rely on it to make code easier...
Go Context
A Go Context is a development concept used to shape how software is built, executed, or maintained in real systems. Developers rely on it to make code easier...
Godoc
The traditional Go documentation tooling and format used to generate readable docs from source code comments and package structure. In Go culture, godoc...
Go Goroutine
A Go Goroutine is a development concept used to shape how software is built, executed, or maintained in real systems. Developers rely on it to make code easier...
Go Interface
A Go Interface is a development concept used to shape how software is built, executed, or maintained in real systems. Developers rely on it to make code easier...
Go Module
A Go Module is a development concept used to shape how software is built, executed, or maintained in real systems. Developers rely on it to make code easier to...
Goroutine
A lightweight, user-space thread managed by the Go runtime rather than the OS, enabling massive concurrency with minimal overhead. Goroutines start with only a...
Go Routine
A Go Routine is a development concept used to shape how software is built, executed, or maintained in real systems. Developers rely on it to make code easier...
Go Struct
A Go Struct is a development concept used to shape how software is built, executed, or maintained in real systems. Developers rely on it to make code easier to...
Go Toolchain
A Go Toolchain is a development concept used to shape how software is built, executed, or maintained in real systems. Developers rely on it to make code easier...
Panic
An unrecoverable runtime error that immediately unwinds (or aborts) the current thread or goroutine, used in Go and Rust when a program reaches a state that is...
Race Detector
A dynamic analysis tool that instruments memory accesses at runtime to detect data races — unsynchronized concurrent reads and writes to the same variable....
Receiver
In Go, the typed parameter before a method name (func (r *MyType) DoSomething()) that binds the method to that type, analogous to 'this' or 'self' in other...
Recover
In Go, a built-in function that regains control of a panicking goroutine. Only useful inside deferred functions. When called during a panic, recover stops the...
Slice
A lightweight view into a contiguous region of an array or buffer, typically represented as a pointer, a length, and optionally a capacity — without copying...
Structural Subtyping
A type compatibility rule in which a type is considered a subtype of another if it has at least the same structure — the same properties or methods with...
Structural Typing
A type system where compatibility is determined by a type's structure (its properties and methods) rather than its declared name or inheritance hierarchy. If...
Vendoring
The practice of copying third-party dependencies directly into a project's repository (typically in a vendor/ directory) rather than fetching them from a...
Wait Group
A synchronization primitive, most associated with Go's sync.WaitGroup, that maintains an internal counter which goroutines increment before starting work and...
Zap
A high-performance, structured logging library for Go developed by Uber, designed to minimize memory allocations and CPU overhead by using a strongly-typed,...

Related Topics