mruby
作者 | まつもとゆきひろ |
---|---|
開発元 | まつもとゆきひろ |
初版 | 2012年4月20日 |
最新版 | 3.0.0 - 2021年3月5日[1] [±] |
最新評価版 | 3.0.0 / 2020年10月16日[2] |
リポジトリ | |
プログラミング 言語 | C言語、Ruby |
対応OS | クロスプラットフォーム |
種別 | Rubyインタプリタ |
ライセンス | MITライセンス |
公式サイト | mruby |
mruby (エムルビー) は、組み込みシステム向けの軽量なRuby言語処理系である[3]。このプロジェクトはRubyの開発者であるまつもとゆきひろがリーダーを務めており、100人以上がこのプロジェクトに貢献している。
機能
[編集]mruby 1.0ではRuby 2.1のコアAPIをサポートしているが、標準ライブラリはサポートしていない。 mrubyは基本的なRubyコードの実行に加えて、LuaのようにC言語やC++に簡単に組み込むことができるようになっている。
mrubyは「ISO/IEC 30170:2012」に準拠することを目標としている[3]。
例
[編集]- C言語からmrubyを呼び出す場合
#include <stdio.h> #include <mruby.h> #include <mruby/compile.h> int main(void) { mrb_state *mrb = mrb_open(); char code[] = "5.times { puts 'mruby is awesome!' }"; printf("Executing Ruby code with mruby:\n"); mrb_load_string(mrb, code); mrb_close(mrb); return 0; }
- 以下のコマンドでコンパイルと実行ができる[4]。
$ cc example.c -lmruby -lm -o example $ ./example
- プリコンパイルされたバイトコード
- mrubyにはmrubyバイトコードを実行するための最小限の仮想機械が組み込まれている。
$ mrbc test.rb $ mruby -b test.mrb
- 最初のコマンドはRubyコードをmrubyバイトコードにコンパイルを実行し、「test.mrb」というファイルが生成される。このファイルはmrubyインタプリタにコマンドライン引数として「-b」を渡すことで実行することができる[5]。
脚注
[編集]- ^ “Releases”. GitHub. 2021年3月9日閲覧。
- ^ “Releases · mruby/mruby · GitHub”. GitHub. 2020年12月31日閲覧。
- ^ a b “mruby”. mruby.org. 2019年9月25日閲覧。
- ^ “Getting Started With Mruby”. 2018年7月19日閲覧。
- ^ “An Introduction to Mini Ruby”. 2018年7月19日閲覧。
関連項目
[編集]外部リンク
[編集]- 公式ウェブサイト
- mruby - GitHub
- 軽量Rubyフォーラム - まつもとゆきひろが理事長を務めるmrubyのNPO