Googleは2009年11月10日(米国時間)、オープンソースのプログラミング言語「Go」を発表しました。
Go言語は、Linux、Mac、Native Clientで動作する開発言語で、Android携帯上でも動作します。
まだ発表されたばかりなのでこれからの動向が注目されています。

特徴はGoogleによると・・

  • シンプルな言語である。
  • コンパイル・実行速度が早い。
  • 安全性が高い。
  • 同期処理が容易に行える。
  • なにより楽しい。
  • オープンソースである。

これらについてもう少し掘り下げてみてみましょう。

シンプルな言語である

以下がおなじみのHelloWorldのコードです。

package main

import "fmt"

func main() {
  fmt.Printf("Hello, 世界\n")
}

確かにシンプルではありますが、いたって普通です。
他の言語とあまり違いがありませんが、裏を返せばこれ以上簡素化はできないということでしょうか。

コンパイル・実行速度が早い

Go言語はコンパイル速度が速く、コンパイル済みプログラムの実行速度もC言語やC++に迫る速さです。

安全性が高い

Go言語はタイプセーフかつメモリセーフです。
ポインタの概念はありますが、C言語のようなポインタの演算は出来ません。
ランダムアクセスのためにはslice型が用意されています。

並列処理の記述が容易

goroutineと名づけられた軽量通信プロセスにより、サーバ処理が書きやすくなっています。
必要であれば千個ものgoroutineを一度に動かすことも可能です。

楽しい

Go言語はビルドが早くて、かつ洗練された構文、ガーベージコレクション、多種多様なメソッド、リフレクション機能を持ちます。
一見、動的言語のようですが実行速度と安全性は静的言語そのものです。何より使って楽しい言語です。

オープンソースである

Go言語は オープンソースプロジェクトで、BSDライセンスで提供されています。

Go言語について簡単に紹介をしましたが、今後Go言語はどうなるのでしょうか。
まだ有用な情報・資料が不足していますし、なによりまだWindows上では動作しないのが普及の足かせとなりそうです。