According to Ian Lance Taylor in this thread shortly after the public announcement:
At the top level, every declaration begins with a keyword. This simplifies parsing.
More Related Contents:
- Create a generic channel
- How to pipe several commands in Go?
- How to use a module that is outside of “GOPATH” in another module?
- How can I convert string to integer in golang
- How to dump goroutine stacktraces?
- Cyclic dependencies and interfaces
- Accessing struct fields inside a map value (without copying)
- Why do I get a “cannot assign” error when setting value to a struct as a value in a map? [duplicate]
- Can I concurrently write different slice elements
- Organize local code in packages using Go modules
- Golang Dependency Management Best Practice
- How can I pass a slice as a variadic input?
- Does Go provide REPL?
- How to compare if two structs, slices or maps are equal?
- Golang defer behavior
- Example for sync.WaitGroup correct?
- Stack vs heap allocation of structs in Go, and how they relate to garbage collection
- How to fix parsing go.mod module declares its path as “x” but was required as “y”
- What is the meaning of “dot parenthesis” syntax? [duplicate]
- What is the idiomatic Go equivalent of C’s ternary operator?
- Can I construct a slice of a generic type with different type parameters?
- Why would I make() or new()?
- How to import local packages in go?
- How to implement generic interfaces?
- How to compare Go errors
- How do you statically link a c library in go using cgo?
- Go struct tags with underscore before function names
- calling command with some arguments works but not with others but works from console
- Do buffered channels maintain order?
- What do “value semantics’” and “pointer semantics” mean in Go?