言語ニュース: pypyのJITによる高速正規表現エンジン

まずはpypyについて。pypyとはpythonpythonを実装しようというプロジェクト。
http://codespeak.net/pypy/dist/pypy/doc/

python(実装される方)と言っても一般のものではなくて、RPython(Restricted)という制限を加えられた方言。なので、pypyは実用に耐え得るものというよりも研究プロジェクトと考えた方がよさそうだ。

で、何故pythonpythonを実装するか? 一言で言うと「柔軟性」らしい。hackableな言語で実装するので、思うがままに新機能を開発できるというのが魅力なのだろう。

これだけだと、ただの勉強・お遊びプロジェクトで終ってしまうが、実はこのプロジェクト、凄いポテンシャルを秘めているのだ。アグレッシブなoptimizationをすることによって、ネイティブのCPythonを上回る数字をベンチマークで出すのだ。

この記事によると、正規表現JITを適用してcpythonのreモジュールの6.5倍のパフォーマンスを出したらしい。

http://morepypy.blogspot.com/2010/06/jit-for-regular-expression-matching.html

色々な制約のもとに出した数字なので、実用できるものではないとの但書がある。しかし、面白い結果だ。pypyのアグレッシブな戦略がCPythonやunledden swallowなど各実用pythonに反映されていくのだろう。ホンダがF1参戦してシビックにその技術を反映させるに(ちょっと違うか)。