{"updated":"2025-01-22T23:47:19.608435+00:00","metadata":{"_oai":{"id":"oai:ipsj.ixsq.nii.ac.jp:00016575","sets":["934:935:949:953"]},"path":["953"],"owner":"1","recid":"16575","title":["Ruby 用仮想マシンYARVの実装と評価"],"pubdate":{"attribute_name":"公開日","attribute_value":"2006-02-15"},"_buckets":{"deposit":"23445884-2b82-428e-9d1b-ebe2f15e4df0"},"_deposit":{"id":"16575","pid":{"type":"depid","value":"16575","revision_id":0},"owners":[1],"status":"published","created_by":1},"item_title":"Ruby 用仮想マシンYARVの実装と評価","author_link":["0","0"],"item_titles":{"attribute_name":"タイトル","attribute_value_mlt":[{"subitem_title":"Ruby 用仮想マシンYARVの実装と評価"},{"subitem_title":"YARV: Yet Another RubyVM窶披乃he Implementation and Evaluation","subitem_title_language":"en"}]},"item_keyword":{"attribute_name":"キーワード","attribute_value_mlt":[{"subitem_subject":"通常論文","subitem_subject_scheme":"Other"}]},"item_type_id":"3","publish_date":"2006-02-15","item_3_text_3":{"attribute_name":"著者所属","attribute_value_mlt":[{"subitem_text_value":"東京農工大学大学院工学教育部"},{"subitem_text_value":"株式会社ネットワーク応用通信研究所 島根大学大学院総合理工学研究科"},{"subitem_text_value":"筑波大学大学院システム情報工学研究科"},{"subitem_text_value":"東京農工大学大学院工学教育部"}]},"item_3_text_4":{"attribute_name":"著者所属(英)","attribute_value_mlt":[{"subitem_text_value":"Graduate School of Technology Tokyo University of Agriculture and Technology","subitem_text_language":"en"},{"subitem_text_value":"Network Applied Communication Laboratory, Inc.,Interdisciplinary Graduate School of Science and Engineering Shimane University","subitem_text_language":"en"},{"subitem_text_value":"Graduate School of Systems and Infomation Engineering University of Tsukuba","subitem_text_language":"en"},{"subitem_text_value":"Graduate School of Technology Tokyo University of Agriculture and Technology","subitem_text_language":"en"}]},"item_language":{"attribute_name":"言語","attribute_value_mlt":[{"subitem_language":"jpn"}]},"item_publisher":{"attribute_name":"出版者","attribute_value_mlt":[{"subitem_publisher":"情報処理学会","subitem_publisher_language":"ja"}]},"publish_status":"0","weko_shared_id":-1,"item_file_price":{"attribute_name":"Billing file","attribute_type":"file","attribute_value_mlt":[{"url":{"url":"https://ipsj.ixsq.nii.ac.jp/record/16575/files/IPSJ-TPRO4702006.pdf"},"date":[{"dateType":"Available","dateValue":"2008-02-15"}],"format":"application/pdf","billing":["billing_file"],"filename":"IPSJ-TPRO4702006.pdf","filesize":[{"value":"477.1 kB"}],"mimetype":"application/pdf","priceinfo":[{"tax":["include_tax"],"price":"660","billingrole":"5"},{"tax":["include_tax"],"price":"330","billingrole":"6"},{"tax":["include_tax"],"price":"0","billingrole":"15"},{"tax":["include_tax"],"price":"0","billingrole":"44"}],"accessrole":"open_date","version_id":"6786c10d-d99d-4af0-984b-a57c259c8714","displaytype":"detail","licensetype":"license_note","license_note":"Copyright (c) 2006 by the Information Processing Society of Japan"}]},"item_3_creator_5":{"attribute_name":"著者名","attribute_type":"creator","attribute_value_mlt":[{"creatorNames":[{"creatorName":"笹田, 耕一"},{"creatorName":"松本, 行弘"},{"creatorName":"前田, 敦司"},{"creatorName":"並木, 美太郎"}],"nameIdentifiers":[{}]}]},"item_3_creator_6":{"attribute_name":"著者名(英)","attribute_type":"creator","attribute_value_mlt":[{"creatorNames":[{"creatorName":"Koichi, Sasada","creatorNameLang":"en"},{"creatorName":"Yukihiro, Matsumoto","creatorNameLang":"en"},{"creatorName":"Atsushi, Maeda","creatorNameLang":"en"},{"creatorName":"Mitaro, Namiki","creatorNameLang":"en"}],"nameIdentifiers":[{}]}]},"item_3_source_id_9":{"attribute_name":"書誌レコードID","attribute_value_mlt":[{"subitem_source_identifier":"AA11464814","subitem_source_identifier_type":"NCID"}]},"item_resource_type":{"attribute_name":"資源タイプ","attribute_value_mlt":[{"resourceuri":"http://purl.org/coar/resource_type/c_6501","resourcetype":"journal article"}]},"item_3_source_id_11":{"attribute_name":"ISSN","attribute_value_mlt":[{"subitem_source_identifier":"1882-7802","subitem_source_identifier_type":"ISSN"}]},"item_3_description_7":{"attribute_name":"論文抄録","attribute_value_mlt":[{"subitem_description":"本稿ではオブジェクト指向スクリプト言語Ruby を高速に実行するための処理系であるYARV: Yet Another RubyVM の実装と,これを評価した結果について述べる.Ruby はその利用のしやすさから世界的に広く利用されている.しかし,現在のRuby 処理系の実装は単純な構文木をたどるインタプリタであるため,その実行速度は遅い.これを解決するためにいくつかの命令実行型仮想マシンが提案・開発されているが,Ruby のサブセットしか実行できない,実行速度が十分ではないなどの問題があった.この問題を解決するため,筆者はRuby プログラムを高速に実行するための処理系であるYARV を開発している.YARV はスタックマシンとして実装し,効率良く実行させるための各種最適化手法を適用する.実装を効率的に行うため,比較的簡単なVM 生成系を作成した.本稿ではRuby の,処理系実装者から見た特徴を述べ,これを実装するための各種工夫,自動生成による実装方法について述べる.また,これらの高速化のための工夫がそれぞれどの程度性能向上に寄与したかについて評価する.","subitem_description_type":"Other"}]},"item_3_description_8":{"attribute_name":"論文抄録(英)","attribute_value_mlt":[{"subitem_description":"In this paper, we describe the implementation and evaluation results of YARV, next generation Ruby implementation. The Ruby language is used worldwide because of its ease of use. However, current interpreter is slow due to its evaluation method. To solve this problem, several virtual machine designs were proposed, but none of them exhibited adequate performance/functionality combination. Our implementation, called YARV (Yet Another Ruby VM), is based on a stack machine architecture. YARV incorporates a number of optimization techniques for high speed execution of ruby programs. In this paper, we describe the characteristics of Ruby from implementor’s point of view, and present concrete solutions for these issues as well as implementation of optimization techniques. We also show how each of these optimizations contributed to the speed-up.","subitem_description_type":"Other"}]},"item_3_biblio_info_10":{"attribute_name":"書誌情報","attribute_value_mlt":[{"bibliographicPageEnd":"73","bibliographic_titles":[{"bibliographic_title":"情報処理学会論文誌プログラミング(PRO)"}],"bibliographicPageStart":"57","bibliographicIssueDates":{"bibliographicIssueDate":"2006-02-15","bibliographicIssueDateType":"Issued"},"bibliographicIssueNumber":"SIG2(PRO28)","bibliographicVolumeNumber":"47"}]},"relation_version_is_last":true,"weko_creator_id":"1"},"created":"2025-01-18T22:49:48.552177+00:00","id":16575,"links":{}}