「MacRuby」 - ひさしを借りて母屋を乗っ取るか? Mac OS Xの新たなRuby環境 (1) MacRubyとは何か?

ニュース
トップ

【レポート】

「MacRuby」 - ひさしを借りて母屋を乗っ取るか? Mac OS Xの新たなRuby環境

1 MacRubyとは何か?

木下誠  [2008/03/17]
  • <<
  • <

1/3

Leopardの登場以降、Mac OS Xではスクリプティング言語環境のサポートが活発だ。それは、単に動作環境を標準インストールすることにとどまらず、CocoaやQuartzといった、Mac OS Xネイティブのフレームワークにアクセスする手段が提供されることで、デスクトップアプリケーションを作るための新しい道という位置づけがなされている。Rubyに関するものとしては、RubyからCocoaを含む様々なフレームワークへのブリッジを提供する、RubyCocoaが標準でインストールされている。

そして去る2月28日に、新しいRuby環境が登場したMacRuby である。MacRubyの動機として挙げられているのは、RubyCocoaが抱えている問題を解決する、というものだ。RubyからCocoaへアクセスするという目的はRubyCocoaと同じものだが、その実装のアプローチはかなりユニークで意欲的なものになっている。

果たして、MacRubyの採用した手法は、どのようなものなのか?その実装を、詳しく紹介しよう。単にCocoaにアクセスできるだけでなく、Ruby環境を改善する可能性を秘めていることも分かるはずだ。

MacRubyのダウンロードとインストール

まず、MacRubyのダウンロードとインストールを行おう。

現在、MacRubyはソースコードでの提供となっている。バイナリはないので、自分でコンパイルする必要がある。動作環境は、Mac OS X 10.5.2以降。Intelプラットフォームのみのサポートとなる。

ソースコードは、Subversionリポジトリから取得する。手順は、こちらの「InstallingMacRuby」に記述されている。この手順に従って、Subversionからのダウンロード、バイナリのMakeおよびインストールを行えばいい。さらに、XcodeでMacRubyアプリケーションを開発するための、テンプレートもインストールできる。

MacRubyのバイナリは、/usr/local/bin/rubyにインストールされる。純正のRubyのパスは/usr/bin/rubyになるので、必要に応じて使い分けよう。

ダウンロードしたソースコードをざっと見てみると、Rubyランタイムのソースコードであることに気づく。そこに、MacRuby用の拡張が加えられているのだ。つまり、MacRubyはベースにはRubyのランタイムを使っており、いくつかのポイントでObjective-Cのランタイムを使うようになっている。

ちなみに、ソースコード上での変更箇所は、#ifdef WITH_OBJCでマークされている。これを追いかけて行けば、MacRubyでの変更箇所が分かるだろう。

  • <<
  • <

1/3

インデックス

目次
(1) MacRubyとは何か?
(2) Cocoaの呼び出し方
(3) Ruby環境としての特徴
関連したタグ

新着記事

特別企画

一覧

    人気記事

    一覧

    新着記事

    ZARD「負けないで」「揺れる想い」、小田急線渋沢駅の駅メロディーに決定!
    [18:38 11/26] 旅行
    サイバーエージェントとAvex、音楽配信サービスにおける新会社「AWA」設立
    [18:34 11/26] エンタープライズ
    【コラム】東急電鉄の列車・車両 第2回 5050系4000番台、東横線急行元町・中華街行
    [18:30 11/26] 旅行
    三菱、電気自動車「i-MiEV」のラッピングに新デザインを追加
    [18:28 11/26] ライフ
    岡山大など、世界で初めて成体腎臓の幹細胞から腎臓構造の再現に成功
    [18:28 11/26] テクノロジー

    特別企画

    一覧