“組み込みRuby”こと「mruby」をセットアップしてみよう:mruby概論(2)(2/3 ページ)
Rubyの特長を組み込み開発に反映させたプログラミング言語が「mruby」です。今回は実際のセットアップと基本的な構文について解説します。
mrubyインタプリタ(bin/mruby)
mrubyインタプリタ(bin/mruby)は、Rubyスクリプトを解釈して実行します。さらにバイナリコードの実行も可能です。
実際に動かしてみましょう。Ruby/mrubyのアプリケーションは通常.rbという拡張子を付けます。
例として下記のプログラムをtwice.rbという名前で作成します。
ary = [1, -2.5, "mruby", [3, 9]] ary.each do |x| p x * 2 end
1行目 [ ] で括られたものを配列(Array)
2行目 Array#eachは配列の要素を順番に繰り返すメソッド
3行目 "p" は引数で指定した値の内容を画面表示するメソッド
これを実行します。
$ mruby twice.rb
2 -5 "mrubymruby" [3, 9, 3, 9]
mirbgは対話形式でmrubyを実行できます。Rubyで言うところの“irb”に相当します。簡易的な動作確認に使います。
C:\mruby\mruby>mirb mirb - Embeddable Interactive Ruby Shell
> 0xffff => 65535 > a=[1,5,-9] => [1, 5, -9] > a*3 => [1, 5, -9, 1, 5, -9, 1, 5, -9] >
mrubyコンパイラ(bin/mrb)
mrubyコンパイラ(bin/mrb)はRubyスクリプトをバイトコードにコンパイルします。コンパイル結果のファイルは以下の2種類を作成でき、コンパイル時のスイッチで決定します。
- バイナリファイル (mrbファイル -B オプション指定なし)
実行環境のファイルシステムに配置し、mruby VMにロードして実行します。実行環境にファイルシステムが必要です。
*実行例
$ mrbc rwice.rb
実行結果としてtwice.mrbが生成されます
- C言語ソースファイル(バイナリデータのchar配列 -B オプション指定なし)
アプリケーションの一部としてバイナリコードを読み込み、そのメモリ上のバイナリコードをmruby VMに読み込ませて実行します。ファイルシステムを持たない実行環境でも利用できます。
*実行例
$ mrbc -Bappin twice.rb
実行結果としてtwice.cが生成されます
コンパイル結果の実行をします。
$ mruby -b twice.mrb
-b バイナリ(mrb)ファイルの実行
Copyright © ITmedia, Inc. All Rights Reserved.