GoogleがリリースしたGo言語を試してみました。
Go言語は、C言語のようなシステム言語でガベージコレクションを備えて、シンプルでコンパイルがすごく早いのが特徴だそうです。
MacBookにMacPortsでmercurialがインストールされていれば簡単に試すことができます。
ダウンロード
googleのオフシャルなソースコード管理は、mercurialなんですねぇ。
$ hg clone -r release https://go.googlecode.com/hg/ go 全チェンジセットを取得中 チェンジセットを追加中 マニフェストを追加中 ファイルの変更を追加中 3976 のチェンジセット(16799 の変更を 2931 ファイルに適用)を追加 作業領域の更新中 1640 個のファイルが更新, 0 個のファイルがマージ, 0 個のファイルが削除, 0 個のファイルが衝突未解決 $
コンパイル
環境変数を設定するときにGOOSにOSアーキテクチャを設定します。
$ env | grep \^GO GOBIN=$HOME/bin GOARCH=amd64 GOROOT=$HOME/go GOOS=darwin $ cd $GOROOT/src $ ./all.bash
Hello, World!
go言語のソースを作ってコンパイルして実行します。
$ cat >hello.go <<EOF > package main > > import "fmt" > > func main() { > fmt.Printf("hello, world\n") > } > EOF $ 6g hello.go $ 6l hello.6 $ ./6.out hello, world $
ううむ、短いソースだとコンパイルが、すごく早いか分からない。
コマンドも、コンパイラが”6g”でリンカが”6l”って、とんちがきいていますが、正直うちにくい。
mavenやantにあたるものはないのかな?