54回目

guRuby #54

今日(2015/03/18)で54回目

Rubyのしくみ」を読むようになってから3回目。今日は第2章のコンパイルから。

YARV命令列の説明。

Hello YARV

 でこんな感じでYARV命令列が見れる。(と思ったらキーワードリンクされちゃってるよ...)

== disasm: <RubyVM::InstructionSequence:<compiled>@<compiled>>==========

0000 trace            1                                               (   1)

0002 putself          

0003 putstring        "Hello World!"

0005 opt_send_without_block <callinfo!mid:puts, argc:1, FCALL|ARGS_SIMPLE>

0007 leave

RubyVM::InstructionSequenceがrequireとか無しで使えるところがなんかいい。

スタックマシンの挙動?は第3章で説明あるらしいので、2章だけ読んでると、動いているイメージが実は私つかみづらくてモヤモヤが残るけど3章が楽しみだ。スッキリしたい。来月は3章に入れるかな。

Rubyのしくみ -Ruby Under a Microscope-

Rubyのしくみ -Ruby Under a Microscope-