Googleの開発するプログラミング言語「Go 1.2」リリース

 米Googleが開発しているプログラミング言語「Go」の最新版となる「Go 1.2」が12月1日にリリースされた。細かな変更や改善が中心となり、性能も強化されている。

 Goはオープンソースで開発されているプログラミング言語で、信頼性の高いソフトウェアを効率よく構築することを目指す。強い静的型付け、シンプルな設計などを特徴とし、Pythonのような動的言語の開発スピードと、C/C++のようなコンパイル言語の安全性とを組み合わせるとしている。Googleは2009年にプロジェクトを発表し、2012年3月にバージョン1リリースを迎えている。ライセンスはBSD License。

 Go 1.2は5月に公開されたバージョン1.1に続く最新版となる。言語側ではThree-index slicesとして、スライスのキャパシティを指定する文法が加わった。また、ツールチェーンでは「go test」コマンドにおいてにコードカバレッジテスト結果の処理と表示が加わった。ただし表示については「go tool cover」コマンドを利用する必要がある。このほか、cgoコマンドも強化されている。

 スケジューラも改良され、関数内の任意の位置で実行コンテキストの切り替えが可能になった。これにより、関数内のループを実行している最中でも、同じスレッド内で別の処理を並列実行させることが可能になるという。また、単一プログラムでのスレッド数の上限設定も可能となった(デフォルトは1万)。これによりリソース枯渇を防止できるという。

 標準ライブラリでは標準エンコードインターフェイスの定義セットencodingが導入された。encoding/xml、encoding/json、encoding/binaryなどのパッケージに利用できる。カラーパレットのimage/color/paletteも加わった。

 プロジェクトのWebサイトではWindowsおよびLinux、Mac OS X向けのバイナリが公開されている。さらに、Go 1.2リリースに合わせてWebでGoを利用できるサービス「Go Playground」も1.2にアップデートされているとのこと。

 1.2は1.1から7か月を経ての最新版となったが、Googleによると今後も同程度の間隔で最新版をリリースする予定だという。

Go
http://golang.org/

米Google
http://www.google.com/