タグ

rubyとYARVに関するkgbuのブックマーク (1)

  • YARV のバイトコードと戯れる方法 - まめめも

    YARV では、バイトコードを直接書いて実行する方法が提供されています。バイトコードといってもバイトとかは出てこなくて、配列やシンボルを使って命令列を表現します。こんな感じ。 # encoding: utf-8 # good_example.rb # ヘッダ header = [ "YARVInstructionSequence/SimpleDataFormat", 1, 1, 1, { :arg_size=>0, :local_size=>1, :stack_max=>3 }, "<dummy>", "foo.rb", :top, [], 0, [] ] # バイトコード体 (スタックマシン) body = [ [:putnil], # レシーバを積む # (関数呼び出しのときは nil) [:putobject, 1], # 1 を積む [:send, :p, 1, nil, 8,

    YARV のバイトコードと戯れる方法 - まめめも
    kgbu
    kgbu 2008/05/24
    YARVのバイトコードを直接実行する方法があるらしい。で、変なコードを実行すると困るので、verifierの話に続くらしい
  • 1