Google Releases Version 1 of Go Programming Language
Google Inc. this week released version 1 of its Go programming language. The release was announced on the Go Programming Language Blog in a post by Andrew Gerrand, developer advocate for Go at Google Sydney.
Go is an open source systems programming language that was first announced in 2009, after being internally developed at Google since 2007. In the Go FAQ, Google describes Go as "mostly in the C family (basic syntax), with significant input from the Pascal/Modula/Oberon family (declarations, packages), plus some ideas from languages inspired by Tony Hoare's CSP, such as Newsqueak and Limbo (concurrency)."
Go version 1 (Go 1), which Gerrand referred to as a "major milestone," is the first release that promises stability with future iterations of the language, according to the company.
In his blog post, Gerrand noted that Go 1 is "not a major redesign," but rather provides a new standard for the Go language so that developers can confidently use it to build stable products. He discussed some of the primary reasons for the release of Go 1, including "forward compatibility," updates to the language and its standard library, and the introduction of a new go command. Gerrand described the go command as "a program for fetching, building, installing and maintaining Go code."
The Go 1 release also makes the language usable on different platforms. "Go 1 is the first release of Go that is available in supported binary distributions. They are available for Linux, FreeBSD, Mac OS X and, we are thrilled to announce, Windows," Gerrand explained.
A new version of the Google App Engine SDK was released concurrently with Go 1. Gerrand noted that, like Go 1, the new App Engine release is intended to provide a stable base for current and future development.
The Go 1 tools are now available for download, and the Go Getting Started page provides installation instructions. The Go 1 Release Notes provide an introduction to the language and a detailed breakdown of the changes made in this release.
Katrina Carrasco is the associate group managing editor for the 1105 Enterprise Computing Group. She can be reached at [email protected]