days old • Compiled language • Faster than Python • Garbage collection • Slower* than C *debatable • Production ready More details: • Officially announced Nov. 2009 • BSD license • Strong, static typing • Cross-platform
easy to read and write but execution time ins't always the best. Concurrency is available with tools like tornado but is not a “baked in” feature of the language. Python
but slow and not efficient building (like C++), efficient compliation (but not so fast execution like .NET or Java), or ease of programming (but slower execution, like the dynamic languages): Go is an attempt to combine all three wishes: efficient and thus fast compilation, fast execution, ease of programming.” – Ivo Balbaert The Way to Go
in the same address space. Not exactly the same as threads, coroutines or processes. func Announce(message string) { go func() { fmt.Println(message) }() } Conceptually similar to the & command in Unix to run a process in the background. Channels are how goroutines “talk” to each other, only one goroutine will ever have access to the data at any given time. c := make(chan int) go func() { list.Sort() c <- 1 }() doSomethingForAWhile() <-c In this example we make a channel of integers, call list.Sort() as a goroutine and when It's done, send the signal to c. We can call other functions while we wait for sort to finish. Once we get the signal, we can discard it.
in the Go programming language. It's ideal for writing simple, performant backend web services. “ https://github.com/hoisie/web • Routing to url handlers based on regular expressions • Secure cookies • Support for fastcgi and scgi • Web applications are compiled to native code. This means very fast execution and page render speed • Efficiently serving static files
- Step by step through samples http://golang.org/doc/codewalk/ - Community pakages http://godashboard.appspot.com/ - Books http://go-lang.cat-v.org/books Bindings for couch, mongo, riak, mysql, redis, even bitcoin.
http://www.unixica.com/images/thompson.jpeg • http://1.bp.blogspot.com/-ti6s2UsV8no/Tdn82ozbggI/AAAAAAAAABM/AS4-YcQWfgo/s1600/gopher.jpg%20border= • http://farm8.staticflickr.com/7209/6779040884_3f7bfeaf89_z.jpg • http://27.media.tumblr.com/tumblr_kt2ejqry4W1qz5wuco1_500.jpg Oh yeah. If you were curious: