Go
やっとGo言語さわれそうになってきたのでちょっとずつ触ってみてます。 で、言語仕様とかはわかってきたのだけど、ソースコードの分割方法がわからなくて試したり調べたりして多分理解したと思うのでメモを。 ディレクトリ名がimport時に書くimport名(とい…
Pythonのvirtualenv風なコマンド、goenvを使ってみました。 goofはちょっとインストールできなかったので使ってません。 環境:OS X 10.7.5 前提 Goがインストールされている事 GOROOTが設定されている事 準備 .bashrcに以下を書きます。GOENVTARGETはgoenv…
基礎からわかるGo言語を買ったものの、あまり読み進めていなかったのでちゃんと読みつつ記事としても書いて行こうかと。 node.js + Go言語って組み合わせで今後何か作れると良いなあと思いつつ。 Hello, World! とりあえずHello, World!を。 1.go package ma…
initって関数を宣言しておくと最初に実行されるとか。 Delphiのinitialization見たいな感じ? package main import ( "fmt" ) func init() { fmt.Println("init") } func init() { fmt.Println("init") } func main() { fmt.Println("main") } $ go run inde…
昨日書いたやつをちゃんと出力されるように? package main import ( "fmt" "strconv" ) func fizzbuzz(min, max int, c chan string) { for i := min; i <= max; i++ { numStr := strconv.Itoa(i) ret := numStr + ": " switch { case i % 15 == 0: ret += …
チャネルを使ったfizzbuzzを。出力めちゃくちゃだけどw package main import ( "fmt" "strconv" ) func fizzbuzz(min, max int, ch chan string) { for i := min; i <= max; i++ { numStr := strconv.Itoa(i) outStr := numStr + ": " switch { case i % 15…
同じディレクトリに以下のような感じのコードを書いておくと…… a.go package main func main() { } b.go package main func main() { } $ go build # _/home/sasaplus1/Work/aaa ./b.go:3: main redeclared in this block previous declaration at ./a.go:3 …
Go言語を始めたくなったのでfizzbuzzを書いたのですよ。 1個目 package main import ( "fmt" "strconv" ) func main() { for i := 1; i <= 100; i++ { fmt.Printf(strconv.Itoa(i) + ": ") switch { case i % 15 == 0: fmt.Println("fizzbuzz") case i % 5 =…
Goをインストールすると、一緒にVimプラギンも付いてきます。 それをNeoBundleで管理してもらう方法です。管理というか、pathogen.vim的な動作をしてもらうだけなのですが。 GOROOTを設定する 最初にGOROOTを設定します。設定しないとどこにインストールされ…
Goがものすごいいろいろ変わっててびっくりした。8gとかどこ行ったの? 環境:Debian 6.0.5 32bit (CUI) / Go 1.0.2 ダウンロード・インストール $ wget http://go.googlecode.com/files/go1.0.2.linux-386.tar.gz $ tar xvfz go1.0.2.linux-386.tar.gz -C ~…
Ruby Python node.js Lua Go RubyGems easy_install npm LuaRocks goinstall goinstallはパッケージマネージャなのかな、どうなのかな。