Go言語メモ(未完)

  • 文法
    • cとスクリプト言語の中間みたいな感じ。結構独特。
      • 関数が複数の値を返せる
      • forなどの()がない
  • 型推論
    • 型の明示的な指定も可能。指定しなければ型推論がされる。
  • クラス相当
    • 語句としてクラスの機能はない。c++みたい構造体にメソッドが追加可能(内部で宣言するのではなく、外部で構造体にレシーバを追加する。組み込み型にも追加が可能)。
  • 継承
    • 語句として継承の機能はない。
    • 実装の継承
      • クラスの継承に相当する物はない。rubyのようにMix-inするらしいが詳細不明。(要確認)
    • 仕様の継承
  • コルーチン
    • ゴールーチンがスレッド単位で並列して動く。通信はチャンネル。javaのrunnableの指定のようなものはいらない。
  • 例外
    • まだ(?)ない。
  • GC
    • 有り。
  • ポインタ
    • あるが、cのような安全でないポインタではなく、javaの参照相当。また、文字操作などには"スライス"というものがある。