yarv-dev:112
From: SASADA Koichi <ko1 atdot.net>
Date: Mon, 19 Jul 2004 16:54:51 +0900
Subject: [yarv-dev:112] optimization on dynamic-typed oo language
ささだです。 某所で、コンパイラな話をちょびっとだけしたら、 An Efficient Implementation of Self, a Dynamically-Typed Object-Oriented Language Based on Prototypes http://research.sun.com/research/self/papers/implementation.html OOPSLA '89 Conference Proceedings, pp. 49-70, New Orleans, LA, October, 1989. を紹介してもらいました。 概要だけ見たんですが、要するに def m 1+2*2 end というものを、 def m 5 end def m 1+4 # * はnative end def m 1+2*2 # + は native end みたいに、* や + が再定義されたときに使うメソッドも用意し ておいて、どんどんインライン展開していきましょう、って話なん でしょうかね。 自宅なんで、postscript を見る環境が無いんですが、どなかた 読んでませんか? しかし、89。 私は静的なコンパイルにはあんまり興味なかったんで、再定義され たらJIT再コンパイル、ってのは考えてはいたんですが。まぁ、すぐに 思いつくよなぁ。 -- ML: yarv-dev quickml.atdot.net 使い方: http://www.atdot.net/~ko1/quickml