Go: Retrospective
The history of Go is must-have knowledge for every developer. Knowing the major changes released across the years helps you to understand the mindset of Go and the strengths/weaknesses of the language for each version. For more details about a specific version, the changelogs are linked to each version number.
Go 1.0 — March 2012:
The first version of Go shipped a compatibility document that guarantees compatibility with the future releases in order to not break existing programs.
This first version already has the go tool pprof
command that is a slight variant of Google’s pprof C++ profiler and go vet
(previously go tool vet
) command that reports likely mistakes in packages.
Go 1.1 — May 2013:
This version of Go was dedicated to improving the language (compiler, garbage collector, map, go scheduler) and its performances. Here is an example of the improvements:
This version also embeds the race detector, an essential tool in the language.
You can find more information about race detector in my article “Race Detector with ThreadSanitizer”.