とりあえず FizzBuzz が動くだけだった Javascript によるRuby 実装な JSRuby ですが、「全然できあがってなくても、まず公開」という教えもあることですし、とっとと CodeRepos に登録してしまおう~
と思っていたのですが、メソッドの実装まわりや、Ruby のオブジェクトの概念の導入など、構成に大きく影響を与えそうな上にまっさきにやらないといけないことくらいは片付けないとなあ。さすがに全体が1ファイルだと、せっかく手を入れようと思ってくれた人がいても衝突しまくりだし。最低限のテストセットも用意しておいた方が話も早いだろうしなあ。
とごにょごにょ作業していたのですが、ようやくそこらへんが片付いたので、CodeRepos に commit させてもらいました。
http://coderepos.org/share/wiki/JSRuby
ライセンスは JavaScript-XPath にならって MIT ライセンスとしています。
機能的なサポート範囲は先日の「 FizzBuzz が動くだけの Ruby っぽいなにか」から大きく変わってはいませんが、数値や文字列が「 Ruby のオブジェクト」として扱われるようになり、それらのメソッドも実装できるようになっています(サンプルとして Integer#chr と String#reverse は実装済み)。これで「 FizzBuzz が動くだけの Ruby のサブセット」に昇格したんじゃないかと(笑)。
またいろいろ細かいバグも取れてます。
TODO はまだまだいっぱいあって、
・エラー処理
・未実装の演算
・未実装の組み込み関数
・未実装の組み込みオブジェクト&それらのメソッド
・スコープ
・メソッド定義
・モジュール定義
・クラス定義
・……
とまあ道のりは長いのですが、とりあえず「どう書く.org に組み込んでもらって、Ruby のコードならブラウザ上でそのまま動作」というのを目標にしようかなあなどなど夢見ています。
よろしければガンガン commit してやってください。