Google Go 编程语言.pdf
文本预览下载声明
The Go Programming Language
Rob Pike
Oct 30, 2009
Monday, November 2, 2009
Go
New
Experimental
Concurrent
Garbage-collected
Systems
Language
Monday, November 2, 2009
Hello, world
package main
import fmt
func main() {
fmt.Printf(Hello, \n);
}
Monday, November 2, 2009
Who
Robert Griesemer, Ken Thompson, and Rob Pike
started the project in late 2007.
By mid 2008 the language was mostly designed
and the implementation (compiler, run-time)
starting to work.
Ian Lance Taylor and Russ Cox joined in 2008.
Lots of help from many others.
Monday, November 2, 2009
Why
Go fast!
Make programming fun again.
Monday, November 2, 2009
Our changing world
No new major systems language in a decade.
But much has changed:
- sprawling libraries dependency chains
- dominance of networking
- client/server focus
- massive clusters
- the rise of multi-core CPUs
Major systems languages were not designed
with all these factors in mind.
Monday, November 2, 2009
Construction speed
It takes too long to build software.
The tools are slow and are getting slower.
Dependencies are uncontrolled.
Machines have stopped getting faster.
Yet software still grows and grows.
If we stay as we are, before long so
显示全部