Monday, September 1, 2014

Go tour #36

気が向いた時にまずは文法覚えようとgo-tourを見ながらgoを触っている。現行の最新版は1.3.1なのかな?

触っていると感じる…凄く…C…、あなた、Cなのっ?という懐かしさ。Cに比べるとシンプルになって無駄な記法を極力減らす努力をしているように見える(; ほとんどないしっ) ポインタもいい感じに隠しているのかな?


以下、#36 Excercise: Slice のコード。

package main

import "code.google.com/p/go-tour/pic"

func Pic(dx, dy int) [][]uint8 {
     // ほんとにCライクだなこれw
     ret := make([][]uint8, dx)
     for i := range ret {
         ret[i] = make([]uint8, dy)
         for j := range ret[i] {
             ret[i][j] = uint8((i+j)/2)
         }
     }
     return ret
}

func main() {
    pic.Show(Pic)
}

昔、似たようなコードをけなげにもint **p = malloc(sizeof(int) * dx); とかやって書いてますたorz。

goだともっとシンプルに書けるかもだけど、妙に懐かしかったというお話。

外部モジュールはgo get code.google.com/p/go-tour/picで取れるけど、これどこに保存されてんだろ? npmみたいのが欲しくなるな。

Written with StackEdit.

No comments:

Post a Comment