-->
./
<!-- フラ&#65533;ュが見れな&#65533;のためにここに何か書&#65533; --> フラ&#65533;ュがインス&#65533;&#65533;ルされて&#65533;&#65533;たいで&#65533;&#65533;&#65533;

2010年03月24日

rtype.js-prototype.js for Rhino

rtype.js - prototype.js for Rhino — ありえるえりあ
Rhinoブーム到来 だそうです。

Rhino絡みのエントリは初回なので軽く説明しておくと、 Rhino とはJavaによるオープンソースのJavaScript実装です。JavaScriptを単体で実行できる他、Javaアプリケーションに組み込んだりもできます。Mozillaがメンテしています。JDKにもバージョン6から同梱されるようになり、OpenOffice.orgでも利用されているようです。ちなみにRhinoという名前はオライリーのサイ本から付けられたそうです。

話は変わって、何年か前にAjaxが流行り出した頃からJavaScriptライブラリが続々と登場しています。もはやデファクトスタンダードと言っても過言ではないprototype.jsを筆頭に、Dojo、Yahoo! UI、ExtJsなど多様な用途の様々なライブラリが利用できるようになり、JavaScriptによるWeb開発はずいぶん容易になりました。一方で、これらのライブラリはあくまでブラウザ組込みのJavaScript処理系での動作を意図しており、RhinoやSpiderMonkeyなどブラウザ以外での動作を念頭に置いたJavaScriptライブラリは見かけません。

というわけで、prototype.jsをRhinoで動くように改造してみました。名付けてrtype.js。昔の某弾幕系シューティングゲームと名前が似ているのは偶然の一致です。多分。

http://sourceforge.net/projects/rtype/

RhinoだとJavaのクラスライブラリ使えるから外部ライブラリいらないじゃん、とかいう突っ込みはなしの方向でお願いします。もともと実用性はあまり重視していなくて、prototype.jsをRhinoで使えたら面白いかな、という発想をそのまま実行に移しただけなのです。rtype.jsの半分はネタでできています。とは言っても、JavaScriptでオブジェクト指向っぽいプログラミングがやり易くなるとか、それなりのメリットはあると思いますが。

機能的な追加はありません。ブラウザ固有の機能(HTML-DOMアクセスとかAjaxサポートとか)を一方的に削っただけです。作業時間の9割は、UnitTestをRhino上で実行できるようにすることに費やしました。

とりあえず公開しましたが、まだUnitTest全部通ってません。ので、バグあります。α版です。人柱版です。

くれぐれも、クリティカルな用途には使用しないで下さい。


 Ubuntu9.10でも
sudo apt-get install rhino
で簡単にインストールできました。インストールの終わりにメッセージが出て、jsというコマンドで起動できることもわかりました。Fedora8のものはバージョンが古いままなのかもしれません。Fedora8とは違い、方向キーでコマンド履歴をさかのぼることもできました。Ctrl+p、Ctrl+nも使えましたが、Ctrl-rでの履歴の検索はできませんでした。

 prototype.jsではRubyに似たpushなどの配列操作の関数が使えるのですが、rhinoではメソッドが未定義だというエラーが出ていました。prototype.jsのファイルを調べるとinspectメソッドもこのファイル内に定義されていました。load関数でprototype.jsを読み込もうとしたのですが、エラーが出て読み込めず、そこで調べて見つけたのがこのサイトのrtype.jsです。エラーもなく読み込め、pushもinspectも使えました。ありがたいことです。



Powered by ScribeFire.

posted by hirono at 02:41| Comment(0) | TrackBack(0) | JavaScript
この記事へのコメント
コメントを書く
お名前:

メールアドレス:

ホームページアドレス:

コメント:

この記事へのトラックバックURL
http://blog.sakura.ne.jp/tb/36633811

この記事へのトラックバック