トップQs
タイムライン
チャット
視点

Mruby

軽量なRuby処理系 ウィキペディアから

Mruby
Remove ads

mruby (エムルビー) は、組み込みシステム向けの軽量なRuby言語処理系である[2]。このプロジェクトはRubyの開発者であるまつもとゆきひろがリーダーを務めており、100人以上がこのプロジェクトに貢献している。

概要 作者, 開発元 ...

機能

mruby 1.0ではRuby 2.1のコアAPIをサポートしているが、標準ライブラリはサポートしていない。 mrubyは基本的なRubyコードの実行に加えて、LuaのようにC言語C++に簡単に組み込むことができるようになっている。

mrubyは「ISO/IEC 30170:2012」に準拠することを目標としている[2]

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;
}
以下のコマンドでコンパイルと実行ができる[3]
$ cc example.c -lmruby -lm -o example
$ ./example
プリコンパイルされたバイトコード
mrubyにはmrubyバイトコードを実行するための最小限の仮想機械が組み込まれている。
$ mrbc test.rb
$ mruby -b test.mrb
最初のコマンドはRubyコードをmrubyバイトコードにコンパイルを実行し、「test.mrb」というファイルが生成される。このファイルはmrubyインタプリタにコマンドライン引数として「-b」を渡すことで実行することができる[4]
Remove ads

脚注

関連項目

外部リンク

Loading related searches...

Wikiwand - on

Seamless Wikipedia browsing. On steroids.

Remove ads