03.06.2013 Views

高 速 な RUBY 用 仮 想 マシン の 開 発

高 速 な RUBY 用 仮 想 マシン の 開 発

高 速 な RUBY 用 仮 想 マシン の 開 発

SHOW MORE
SHOW LESS

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>

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!