Mooseのボトルネック

Mooseの速度改善の一助になればと思ってData::Utiを書いているのが,最近だいぶ機能が増えてきた。
今のところ,Params::Util+Sub::Identify+Sub::Install+Sub::Delete+Data::OptList+αという感じ。全て基本はXSで,コンパイラの無い環境のためのPurePerl実装つき。
とりあえずClass::MOP/Mooseの"bless($x) && $x->isa($y)"を全てis_instance($x, $y)にするだけでもかなり速度は改善するはず。何しろis_instance($x, $y)は$x->isa($y)単体よりも速いからね。

あとはClass::MOP::Class->get_method_map ボトルネックの一つみたいなので時間ができたらXSで書いてみます。