
2025/12/22 14:00
**Mruby:組込システム向け Ruby**
RSS: https://news.ycombinator.com/rss
要約▶
Japanese Translation:
mrubyは、Ruby 3.xの構文(パターンマッチングを除く)に大部分従い、ISO標準の一部に準拠した軽量なRuby実装です。アプリケーションへ埋め込み可能で、インタープリタ(
)、対話型シェル(mruby)、Cソースを生成するコンパイラ(mirb)およびテストハーネス(mrbc)を提供します。mrbtest安定版3.4.0は公式のmruby GitHubリポジトリで公開されており、最新開発スナップショットは
からダウンロードまたはクローンできます。また、ruby‑install、ruby‑build、rvmなどのツールを使用してインストールすることも可能です。github.com/mruby/mruby本プロジェクトは、日本経済産業省の地域イノベーション創出R&Dプログラムによりスポンサーシップを受けています。ドキュメントはRuby API用にYARD、C API用にはDoxygenとGraphvizで生成され(
/rake view_api経由)、作成されています。rake view_capi拡張機能はmrbgemsという軽量パッケージマネージャーを通じて管理されます。ガイドラインは
に記載され、例はmrbgems.mdにあります。メールリストはなく、issueや貢献はGitHubのみで処理されます。ライセンスはMITです。デフォルトの著作権者は「mruby developers」と設定してコンプライアンスを簡素化していますが、寄稿者は著作権を保持しつつプロジェクトに対して非独占的なMIT権利を付与します。examples/mrbgems/ホームページは https://mruby.org です。
本文
目次
- mrubyとは何か
- mrubyの入手方法
- mruby公式ホームページ
- メーリングリストについて
- コンパイル、テスト、およびインストール(mrubyとgem)
- ドキュメントのビルド
- mruby(mrbgems)のカスタマイズ方法
- 文書索引
- ライセンス
- ライセンスに関する注意事項
- 参加方法
- Star History
- コントリビューター
mrubyとは何か
mruby は、ISO規格の一部を満たしつつ Ruby 3.x の多くの最新機能を備えた軽量な Ruby 実装です。パターンマッチング以外は Ruby 3.x と構文が互換性があります。
アプリケーションに
mruby をリンク・埋め込みすることができます。インタープリタプログラム(mruby)と対話型シェル(mirb)を例として提供しています。また、コンパイラ(mrbc)を使って Ruby プログラムをバイトコードに変換することも可能です。これらのツールはすべて bin/ ディレクトリにあります。mrbc はコンパイル済みバイトコードを C ソースファイルとして出力できます;例は test/ 配下の mrbtest プログラムをご覧ください。
本プロジェクトは、日本経済産業省の地域イノベーション創造研究開発プログラムにより支援されています。
mrubyの入手方法
安定版(例:3.4.0)を公式 GitHub リポジトリからダウンロードするか、trunk をクローンします。
git clone https://github.com/mruby/mruby.git
または
ruby-install・ruby-build・rvm でインストール・コンパイルできます。最新の開発版は次の URL から入手可能です:https://github.com/mruby/mruby/zipball/master。
mruby公式ホームページ
メーリングリストについて
メーリングリストは存在せず、代わりに GitHub Issues をご利用ください。
コンパイル、テスト、およびインストール(mrubyとgem)
最も簡単な手順としては次を実行します。
# (詳細は `compile.md` を参照)
完全な手順については
compile.md をご覧ください。
ドキュメントのビルド
以下の2種類のドキュメントがあります。
- API – YARD で生成
- C API – Doxygen と Graphviz で生成
両方をビルドするには:
rake build_api rake build_capi
ローカルで閲覧したい場合は:
rake view_api rake view_capi
mruby(mrbgems)のカスタマイズ方法
mruby には C および Ruby で拡張を作成するためのパッケージマネージャー mrbgems が付属しています。設定方法は
mrbgems.md を参照してください。サンプルコードは examples/mrbgems/ にあります。
文書索引
- mruby の制限について
- コンパイルについて
コマンドを使ったデバッガについてmrdb- GC アリーナについて
- mruby ディレクトリ構成について
- libmruby とのリンクについて
- メモリアロケータのカスタマイズについて
- ビルド時設定について
- ビルド時ライブラリマネージャについて
- シンボルについて
- 実装詳細 / 値の Box 化
- 実装詳細 / mruby 仮想機械命令
ライセンス
mruby は MIT ライセンスで配布されています。
ライセンスに関する注意事項
mruby が MIT ライセンスを採用した理由は、その寛容性と組み込みシステム向けの適合性です。本ライセンスでは、マニュアル内に著作権表示およびライセンス情報を掲載することが求められます。この要件を簡素化するため、ドキュメント上でデフォルトの著作権保持者として「mruby developers」を使用しています。
貢献者は自身の著作権(
AUTHORS に記載)を保持します。別のライセンスでコードを配布したい場合は、当方までご連絡ください。
参加方法
コントリビューションガイドラインに従い、GitHub リポジトリへプルリクエストを送付してください。貢献することで、あなたのコードに対して非独占的な MIT 権利が付与されます。
Star History
(スター数推移チャートのプレースホルダー)
コントリビューター
(コントリビュータ一覧)