github.com/mruby/mruby

軽量・組込み可能な Ruby 実装(まつもとゆきひろ)。ISO 標準(の一部)準拠 + Ruby 4.x の新機能・構文に対応。C アプリにリンク・埋め込めるのが核で、Ruby を bytecode にコンパイルして小さなVMで動かす。経産省の地域イノベーション創出 R&D 事業の支援で生まれた。

確認版: commit 72e5ebed55b672bdff413270022c8398465c2479(2026-06-01)。README は「ISO 標準準拠 + Ruby 4.x 互換構文」と明記。

CRuby との違い

CRuby (MRI)mruby
狙い汎用・フル機能組込み・軽量(フットプリント最小)
埋め込みしにくいC アプリにリンク/埋め込み前提
VMYARV(スタックマシン)RiteVM(レジスタマシン)
ライブラリ巨大な stdlibmrbgems で必要な分だけ取捨選択

→ レジスタVM(RiteVM)を採る点が スタックマシンの CRuby/YARV と対照的。

アーキテクチャ(ソース確認)

確認版は mruby 4.0.0(include/mruby/version.h: MRUBY_RUBY_VERSION "4.0"、release 2026-04-20)。

Ruby ソース → パーサ(parse.y、生成器は tools/lrama)→ codegen
          → RiteVM bytecode(.mrb)→ レジスタVM(src/vm.c)で実行

モジュールとビルド(確認版)

ツールと仕組み

なぜ重要か

「設定/拡張のスクリプト言語を、リソース制約のある C 製プロダクトに埋める」用途の定番。IoT・組込み・ゲーム・サーバ拡張(例: Web サーバの設定 DSL)などで、フル Ruby を積めない所に Ruby の書き味を持ち込める。

関連

Graph