Goの流れにのってみる
巷ではGoやらSPDYやらAndroidやらGoogleの勢いがまた強くなってきた感じがしますね。自分はプログラムする人じゃ無いんですが、流行にのってGoを入れてみました。
環境:Mac OS X 10.5.8
インストール
まんま本家と他家さんを参照。
http://golang.org/doc/install.html
http://d.hatena.ne.jp/amachang/20091111/1257928890
上のページと違うのは環境変数の設定を$HOME/.bash_profileに書き出したのとexport GOARCH=386としたことぐらい。自分のマシンは32bitOSなので。。。っていう理解でいんですよね?本家に書いてあるこれ。(自信なし)
There are important differences in the quality of the compilers for the different architectures.
amd64 (a.k.a. x86-64); 6g,6l,6c,6a
The most mature implementation. The compiler has an effective optimizer (registerizer) and generates good code (although gccgo can do noticeably better sometimes).
386 (a.k.a. x86 or x86-32); 8g,8l,8c,8a
Comparable to the amd64 port. Not as well soaked but should be nearly as solid.
arm (a.k.a. ARM); 5g,5l,5c,5a
It's got a couple of outstanding bugs but is improving. Tested against QEMU and an android phone.
あとついでなので.bash_profileの中身。
# For Go export GOROOT=$HOME/go export GOBIN=$HOME/bin export GOARCH=386 export GOOS=darwin export PATH=$GOBIN:$PATH
もろもろやって、$./all.bashを実行後、無事以下のメッセージが
--- cd ../test 0 known bugs; 0 unexpected bugs
おーちょっと感動
せっかくなのでHello World
公式に記載の"A complete example:"をそのまま試してみる。
■ソース(hello.go) package main import "fmt" func main() { fmt.Printf("hello, world\n") }
■コンパイル〜実行 $ls hello.go $8g hello.go $ls hello.8 hello.go $8l hello.8 $ls 8.out hello.8 hello.go $./8.out hello, world
動いた。以上。
備忘録の関連記事
■プログラミング言語Goの第一印象
戻り値が複数返せるってのはいいですね。C言語ってよりPascalの記法に近いって言うのも確かにーという感じ。
■なんか Go で書くのが流行ってるみたいなので
KVSもどきのプログラムだそうで。あとでゆっくり読んでみよう
■Go のサンプルいくつか
プログラマーって仕事がはやいっすねぇ。尊敬
ひとまず満足。でもほかの人がやってることみるともっと色々やってみたくなります。