Thanks to visit codestin.com
Credit goes to github.com

Skip to content

version 0.0.6 release

Latest

Choose a tag to compare

@hsk hsk released this 11 Nov 14:09
· 7 commits to master since this release
  • オブジェクト指向の機能追加

mutableなメンバ変数を#で、privateなメソッドを~で、publicなメソッドを+で指定出来るようになりました。また、自分自身はthisでアクセスします。:>を使ってキャストします。

enemy class (x:float y:float) {
  // mutable variable
  # x = x
  # y = y
  // private method
  ~ incx = x <- x +. 1.0
  ~ incy = y <- y +. 1.0
  // public method
  + move = {
    this->incx
    this->incy
  }
  + draw = {
    printf("enemy %f %f\n" x y)
  }
}

enemy2 class (x:float y:float) {
  # x = x
  # y = y
  + move = y <- y +. 100.0
  + draw = {
    printf("enemy %f %f\n" x y)
  }
}

_ = {
  es = [
    new enemy(10.0 20.0)
    new enemy2(10.0 20.0) :> enemy
  ]
  List.iter{|e=> e->move; e->draw }(es)
}
  • js_of_ocaml対応

js_of_ocamlを使用する事で、javascriptを生成する事が出来ます。
js_of_ocamlの演算子##が追加してあります。

  • js_of_ocaml対応に伴って、

    add(a,b) = a + b

形式の関数が動くようになりました。