mruby
作者まつもとゆきひろ
開発元まつもとゆきひろ
初版2012年4月20日 (12年前) (2012-04-20)
最新版3.0.0 - 2021年3月5日 (3年前) (2021-03-05)[1] [±]
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
^ “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日閲覧。
関連項目.mw-parser-output .side-box{margin:4px 0;box-sizing:border-box;border:1px solid #aaa;font-size:88%;line-height:1.25em;background-color:#f9f9f9;display:flow-root}.mw-parser-output .side-box-abovebelow,.mw-parser-output .side-box-text{padding:0.25em 0.9em}.mw-parser-output .side-box-image{padding:2px 0 2px 0.9em;text-align:center}.mw-parser-output .side-box-imageright{padding:2px 0.9em 2px 0;text-align:center}@media(min-width:500px){.mw-parser-output .side-box-flex{display:flex;align-items:center}.mw-parser-output .side-box-text{flex:1}}@media(min-width:720px){.mw-parser-output .side-box{width:238px}.mw-parser-output .side-box-right{clear:right;float:right;margin-left:1em}.mw-parser-output .side-box-left{margin-right:1em}}ポータル FLOSS
Ruby
外部リンク
公式ウェブサイト
mruby - GitHub
⇒軽量Rubyフォーラム - まつもとゆきひろが理事長を務めるmrubyのNPO
表
話
編
歴
Ruby
実装
MRI / YARV
IronRuby
JRuby
MacRuby(英語版)
MagLev(英語版)
mruby
mruby/c
Rubinius(英語版)
RubyMotion(英語版)
IDE
Komodo(英語版)
NetBeans
RadRails
RubyMine(英語版)
アプリケーション
Capistrano
Chef
Hiki
Homebrew
irb
Joruri
mobileimap
Puppet
Rake
Redmine
RSpec(英語版)
RubyGems
Sass
tDiary
影舞
島根県CMS