山口能迪 (@ymotongpoo)
LL
インタプリタ
関数オブジェクト
動的型
(スクリプトとそんな変わらない)
実行速度が速いって意味じゃない
単一マシンでも巨大なコードベースをビルド
GCがある
マルチコアのCPUを使い倒す
書きやすい
Go 2009 爆☆誕
コンパイラ必要
強い静的型付け
GCあり
フォーマッティングするツールもある
- メモリフットプリントが小さい
- 実装が簡単
- 文法や機能が最小限
- インタプリタ
メモリフットプリントが小さい
Mark & Sweep GCが常に走っている
未使用のimportや変数はコンパイル時にエラー
でもLLよりは軽くない。普通。
実装が簡単
実行 (ライブラリ依存関係を自動で解決 静的な実行ファイルを生成)
文法 (C Pythonの中間くらいの文法) 型推論がある クラスシステムはない 実装が最小限
ライブラリ呼び出し(ディレクトリ構造に応じたパッケージ構造 標準パッケージ 外のパッケージを呼びたいときはgithubのURLをそのまま突っ込めばいい)
強い静的型付けなので、インタプリタは、ない
ダウンロード
Downloads - go - The Go Programming Language - Google Project Hosting
export PATH=$PATH:/usr/local/go/bin
サンプル
hello.go
// You can edit this code! // Click here and start typing. package main import "fmt" func main() { fmt.Println("Hello, 世界") }
実行
go run hello.go
標準ツールがすごい
必要なパッケージをビルドしたり(go build) 必要なパッケージを取得したり(go get)出来る
go installとか。
(インデントはハードタブ)
goはすごいLL
因みに僕は渡辺香津美が居たころのほうが好き(うろ覚え)