プログラミング言語GoをMacに入れてみる
Googleから新しいプログラミング言語Go (golang) がリリースされた
The Go Programming Language
LinuxとMac OS Xのx86, x86-64, armがサポート対象 (OS X / armは、まだ)
20%プロジェクトとして開発がスタートし、Rob PikeやKen Thompsonも関わってるみたい
(追記) リンクいくつか追加した
グーグル、オープンソースのプログラミング言語「Go」を発表 - CNET Japan
http://journal.mycom.co.jp/news/2009/11/11/025/index.html
Googleの新しいプログラミング言語Go == Python(開発が速い) + C++(実行速度が速い) | TechCrunch Japan
Google、オープンソースのプログラミング言語「Go」リリース - ITmedia エンタープライズ
グーグル、C/C++に代わる新言語「Go」をOSSで公開 − @IT
グーグルの新プログラミング言語「Go」--精鋭チームが切り開く新たな可能性 - CNET Japan
Googleの実験、新しい言語Go
と、言うわけで早速Macにインストールしてみる
- 準備
ソースコードからビルドしないとダメみたい。ソースコード管理にはMercurialが使用されているので、まずはMacPortsでMercurialをインストール
$ sudo port install mercurial
- 環境変数を設定
Goで使う環境変数を.bash_profileに追加
.bash_profile (Mac OS X / 32bitの場合)
export GOROOT=$HOME/go export GOOS=darwin export GOARCH=386
(64bitの場合はamd64を指定)
変更した内容を反映
$ source .bash_profile
- ソースを持ってくる
$ hg clone -r release https://go.googlecode.com/hg/ $GOROOT
- インストール
ソースをビルドしてインストール (コマンドは$HOME/binにインストールされる)
$ cd $GOROOT/src $ ./all.bash
正常に終了すると次のように表示される
--- cd ../test 0 known bugs; 0 unexpected bugs
- 動作確認
確認用にhello worldをコンパイルして実行
hello.go
package main import "fmt" func main() { fmt.Printf("hello, world\n") }
コンパイル(8g)、リンク(8l)して実行
$ 8g hello.go $ 8l -o hello hello.8 $ ./hello hello, world
(64bit版だと6g/6lだよ)
ちょっと遊んでみよう
(追記) クラスベースのオブジェクト指向な言語ではありません。クラスとか継承とかの機能は無いです。httpパッケージの機能が足りなかったので書き換えたかったのに...