Clojure + Proce55ing(3)

Clojure は思っていたよりはずっと大きな Lisp 方言で、http://www.proce55ing.org/learning/topics/follow1.htmlClojure で書こうとしたが、なかなかうまくいかない。まだぜんぜん Clojure が分かっていない、ということが手を動かしたので分かった。以下はちゃんと調べればすぐに解決できる、はず。

  • clojure では(なんでも?)イミュータブルで変更できない = Processing で多用されるフィールドだとかはどうやって扱う?
  • Java のメソッドをよびだすとき、明示的に (float x) などと指定しなければならない場合がある?
    • stroke は PApplet.java で定義され、オーバーロードされている。stroke (int rgb), stroke(int rgb, float alpha), stroke(float gray) このばあい適当にマッチするメソッドを呼んで欲しいが、エラーになる。
  • PApplet クラスは static なクラスメソッド多数だが、Clojure から呼び出す際はインスタンスメソッドとクラスメソッドを区別する必要がある?
  • Clojure の Type hint を適切に与えると速くできるらしい => Proce55ing だと速度は重要。逆にちょっと動かせばすぐどれくらい遅いか分かる。