Go Language
External
- The Go Programming Language Specification https://go.dev/ref/spec
Internal
Overview
Go Language Specification document defines Go as a general-purpose compiled language designed with systems programming in mind. It is strongly typed and garbage-collected and has explicit support for concurrent programming. Programs are constructed from packages, whose properties allow efficient management of dependencies. The existing implementations use a traditional compile/link model to generate executable binaries.
Go declarations can be read "naturally" from left to right, which makes it easy to read.
These are several reasons to use Go: concurrency is a fundamental part of the language, the standard library has almost everything one needs, it is a terse language and "feels" dynamically typed, but it compiles straight into machine code, it compiles fast, and it runs fast.
The Type System
TO DEPLETE and MERGE into THIS DOCUMENT
These are documents produced by the previous attempt. Process, merge into this document, and deplete:
- Go Concepts - Standard Library
- Go Concepts - Lexical Structure
- Go Concepts - Packages
- Go Concepts - Functions
- Go Concepts - Standard Library
- Go Concepts - Runtime
- Go Concepts - Error Handling
- Go Concepts - Concurrency
- Go Concepts - Memory Model
- Go Concepts - Dependency Handling
- Go Concepts - Templates
- Go Concepts - Testing
- Go Concepts - Documentation
- Go Concepts - Compiler
- Go Concepts - Limitations