> From: Tanaka Akira [mailto:akr / m17n.org]
> > 以前に、subexp callのcapture結果をtreeで返そうかなと
> > 考えたことはあったんですが、必要性がよくわからなかったので
> > 止めました。
> 
> たぶん、配列がネストしたようなデータをユーザに提供してもあんまり使いや
> すくならないと思っています。少くとも深くネストしているものは。

そうですね。単純な配列だけを返すという仕様で、実装しようかと思います。
ライブラリが追加情報を返すようにするというだけで、Rubyがその情報を
使用するようになるかどうかは未定ですが。(使用しなければ今まで通りの
結果になります)

記法は、(?@subexp), (?<@name>subexp) でいいのかな?

> Perl6 (や yacc) のようにパターン中にコードを書けて、capture したところ
> で処理できれば使いやすいとは思うんですが、Ruby にうまく入るのかなぁ?

Perl6については知らないのですが、
Perl5の(?{....})とはかなり違ったものになるのでしょうか?
(後でbacktrackされるかどうかには関係なく、その場所に来れば実行される)

個人的には、Rubyのコードが実行できる機能は欲しいです。
正規表現ライブラリのデバッグに使えるかもしれないので。

しかし、そのような機能を入れると、
そのコードの中でマッチングしている文字列オブジェクトに破壊的な
操作をされる、という問題があると思います。
でも、文字列をコピーしてからマッチングを開始すれば回避できてしまうなー。
--
小迫@出向中