Loading article…
| 開発者 | 松本幸弘他 |
|---|---|
| 初回リリース | 2012年4月20日 |
| 安定版リリース | 3.3.0 [1] [2]
/ 2024年2月14日 |
| リポジトリ |
|
| 書かれた | CとRuby |
| オペレーティング·システム | クロスプラットフォーム |
| 標準 | ISO/IEC 30170:2012 |
| タイプ | Ruby プログラミング言語インタープリタ |
| ライセンス | MITライセンス[3] |
| Webサイト | 翻訳元 |
mrubyは、軽量で簡単に埋め込み可能なRubyプログラミング言語のインタープリタです。 [4] [5]このプロジェクトはまつもとゆきひろ氏が主導しており、現在100人以上の貢献者がプロジェクトに取り組んでいます。
特徴
mruby 1.0 は Ruby 2.1 コア API をサポートしていますが、標準ライブラリはサポートしていません。mruby は、ほとんどの基本的な Ruby コードを実行できるだけでなく、バイトコードコンパイラと仮想マシンも備えており、 LuaやTclと同様に、CまたはC++コードに簡単に埋め込んで統合できます。
mruby 2.0.0 [6]では、Ruby 2.1 以降のいくつかの Ruby 2.x メソッドのサポートが追加されました。v2.0.0 では可変長バイトコード命令形式にも変更されました。
mrubyバイトコードはCコードに埋め込むことができ、スタンドアロンの実行ファイルにコンパイルすることができます。[7]
mrubyはISO/IEC 30170:2012規格に準拠することを目指しています[4] 。 [8]
例
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 ( "mrubyでRubyコードを実行しています: \n " );
mrb_load_string ( mrb , code );
mrb_close ( mrb );
0 を返す; }
mrubyライブラリとヘッダーがインストールされていると仮定すると、ターミナルから次のコマンドを実行することでプログラムをコンパイルして実行できます。[9]
$ cc example.c -lmruby -lm -o 例 $ ./例
コンパイル済みバイトコード
mruby には、 ritevmというニックネームの、mrubyバイトコードを実行するために使用される最小限の仮想マシンが含まれています。
$ mrbc テスト.rb $ mruby -b テスト.mrb
最初のコマンドはRubyコードをmrubyバイトコードにコンパイルし、「test.mrb」というファイルを作成します。このファイルは、通常のインタープリタ引数に「-b」フラグを追加することで実行できます。[10]
参考文献
- ^ 「リリース 3.3.0」。
- ^ 「mruby 3.3.0 リリース」。
- ^ “LICENSE”. Github . 2019年9月6日閲覧。
- ^ ab "mruby/mruby". GitHub . 2018年4月30日閲覧。
- ^ mrubyとMobiRubyが発表されました
- ^ 「mruby 2.0.0 リリース」mruby.org . 2019年4月1日閲覧。
- ^ 「mruby で Ruby コードを実行する」mruby.org . 2019 年 4 月 1 日閲覧。
- ^ 「ISO/IEC 30170:2012」。ISO 。 2019年4月1日閲覧。
- ^ Aimonetti, Matt (2012-04-25). 「Getting started with mruby」. 2013-12-29閲覧。
- ^ geekmonkey (2012-10-30). 「Mini Ruby の紹介」。2013 年 12 月 29 日閲覧。
