高 速 な RUBY 用 仮 想 マシン の 開 発
高 速 な RUBY 用 仮 想 マシン の 開 発
高 速 な RUBY 用 仮 想 マシン の 開 発
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
18<br />
VM<br />
オブジェクト管理,GC<br />
CRubyと同等<br />
スタック<strong>マシン</strong><br />
<strong>仮</strong><strong>想</strong>レジスタ:PC, SP, LFP, DFP, CFP, …<br />
値<strong>用</strong>スタックと制御フレーム<strong>用</strong>スタック<strong>の</strong>2本立て<br />
環境をヒープにコピーするClosure<strong>の</strong>実現が容易<br />
スコープ変更 → 制御フレーム<strong>用</strong>スタック push<br />
メソッド呼び出し,ブロック呼び出し(yield),クラス定義文<br />
表引き法による例外処理<br />
例外が<strong>発</strong>生し<strong>な</strong>い限り<strong>高</strong><strong>速</strong><br />
ただし,setjmp/longjmp も利<strong>用</strong>