yarv-dev:1097
From: SASADA Koichi <ko1 atdot.net>
Date: Sat, 04 Nov 2006 00:44:25 +0900
Subject: [yarv-dev:1097] merge with YARV
ささだです。 RubyConf 2006 の最終日にさっさと YARV をマージしろ、といわれてしまった ので、11月中に YARV が本家リポジトリにマージできるように、今作業を進めて います。具体的には、この連休中に形にできればと思っています。 まつもとさんたちと相談した結果、具体的なプランは以下のとおりです。 1. 現在の Ruby HEAD (*a) の仕様(のほとんど)に YARV をあわせる この作業は、YARV のリポジトリで行います <-- いまここ 2. Subversion リポジトリを (*a) から cvs2svn で作る (*b) 3. (*b) に YARV をマージしたものをコミットする (*c) 4. 3 の作業中に (*a) に新たにコミットしたものを (*c) にコミットする (*d) (ここまでは、作業を全部なかったことにできる) 5. (*d) を Ruby の公式リポジトリとする ... 2007/12 YARV つきの 1.9.1 リリース 担当: 1, 2, 3: ささだ 4: まつもとさん 5: ? 5 を行う最終的な判断:まつもとさん 5 の完了を今月 (2006/11) 中に行えればと思っております。 これにともない、Rubyの開発について以下のように変更になります。 a) Ruby 評価器が YARV になる・Ruby の仕様に YARV の制限が入る ・ネイティブスレッドの利用、Thread.critical の廃止 ・eval の binding に関する挙動変更 ・などなど b) リポジトリは CVS から Subversion になる 本件につきまして、Ruby 開発者の方々にお願いがあります。 ・eval.c / parse.y の挙動の差異の調査 YARV の目的は eval.c を無くすこと(評価器の書き換え)であったため、 eval.c、つまり評価器に対する変更には十分に追従できていません。たとえば funcall メソッドの導入(今は違うんでしたっけ?)。なんとなく、中途半端に 追従しているので、余計わかりづらくなっています。 また、parse.y についてもコンパイラ開発との兼ね合いから最新の文法に追従 できていません。 そこで、YARV と 1.9.0最新版と比較して「ここが違う」というご指摘(のリ スト)、パッチなどを頂ければと思います。CVS の変更履歴から変更点を追って いく作業が必要になるかもしれません。 わかりやすい仕様以上に、エラーメッセージ・警告の追加・セキュリティに関 する挙動などがとくに追従できていません。それらに関するご指摘をお願いいた します。この類に関する網羅的なテストは Ruby には存在しないので、これを機 に開発するのもいいかもしれません(Ruby の品質改善に興味がある人が居れば)。 ・YARV のソースレビュー YARV はの C のコードは、ほぼ、ささだ一人で作っていたため全然人の目が 入っていないため、ちょっとあんまりだろ、というところも多いかと思います。 なので、読んでもらってそのあたりご指摘頂ければと思います。 この辺がわからない、などありましたらご質問頂ければ回答させていただけれ ばと思っております。 ・その他 本件について、その他のご指摘も歓迎します。この変更自体は大変大きなもの になるため、いろいろな意見があるかと思います。前述のフェーズ「5」までは いくらでも後戻り可能なので、ご意見頂ければと思います。 YARV: Yet Another Ruby VM http://www.atdot.net/yarv/ YARV Subversion repository http://www.atdot.net/svn/yarv/trunk YARV on ViewCVS http://www.atdot.net/viewcvs/yarv/trunk/ -- // SASADA Koichi at atdot dot net -- ML: yarv-dev quickml.atdot.net Info: http://www.atdot.net/~ko1/quickml
-> 1097 2006-11-04 00:44 [ko1 atdot.net ] merge with YARV 1105 2006-11-10 01:10 ┗[shiba mail2.accsnet.] 1107 2006-11-14 11:29 ┗[ko1 atdot.net ]