[#16708] includedir — nobu.nakada@...
なかだです。
[#16732] sharing sub-regexp — Tanaka Akira <akr@...17n.org>
Oniguruma についてひとつ要望があります。
Tanaka Akiraさんの<hvopu1hxfyd.fsf@coulee.a02.aist.go.jp>から
まつもと ゆきひろです
In article <1017890618.302241.17865.nullmailer@ev.netlab.jp>,
Tanaka Akiraさんの<hvo7knn93ug.fsf@coulee.a02.aist.go.jp>から
In article <20020405044506.D4784349@helium.ruby-lang.org>,
Tanaka Akiraさんの<hvopu1e4omy.fsf@coulee.a02.aist.go.jp>から
In article <20020410025054.C8DF0915@helium.ruby-lang.org>,
In article <hvor8lnchak.fsf@coulee.a02.aist.go.jp>,
前田です。
In article <87pu15z80q.wl@studly.priv.netlab.jp>,
前田です。
In article <87g01x1e6m.wl@studly.priv.netlab.jp>,
西山和広です。
In article <20020416180631.988E.ZN@mbf.nifty.com>,
前田です。
In article <87u1qaj0xe.wl@studly.priv.netlab.jp>,
前田です。
まつもと ゆきひろです
In article <1019116103.420173.12691.nullmailer@picachu.netlab.jp>,
なかだです。
In article <200204181023.g3IANgM21124@sharui.nakada.kanuma.tochigi.jp>,
まつもと ゆきひろです
In article <1019140164.869863.14833.nullmailer@picachu.netlab.jp>,
[#16757] === — "Akinori MUSHA" <knu@...>
Array, Hash, Proc などで、 === が以下のように定義されていると
[#16761] StringIO — tadf@...
ふなばです。
なかだです。
ふなばです。
なかだです。
ふなばです。
青山です。
まつもと ゆきひろです
In article <1022740594.117106.6073.nullmailer@picachu.netlab.jp>,
前田です。
In article <874rgqdt3x.wl@studly.priv.netlab.jp>,
青山です。
まつもと ゆきひろです
青山です。
まつもと ゆきひろです
青山です。
まつもと ゆきひろです
青山です。
[#16776] Ruby 1.7.2 segfault — takuma ozawa <metal@...>
小澤といいます。
なかだです。
[#16790] Ruby Shim — "Akinori MUSHA" <knu@...>
1.7 early access kit という仮称で提案した構想ですが、先ほど
新井です。
At Tue, 9 Apr 2002 02:12:27 +0900,
なかだです。
[#16816] remove_const: cannot remove constant — Koji Arai <JCA02266@...>
新井です。
[#16833] math.c 1.10 — "U.Nakamura" <usa@...>
こんにちは、なかむら(う)です。
まつもと ゆきひろです
さくです。
なかだです。
まつもと ゆきひろです
[#16868] make error on debian potato — Wakou Aoyama <wakou@...>
青山です。
[#16869] Makefiles dependency — nobu.nakada@...
なかだです。
わたなべです。
なかだです。
わたなべです。
なかだです。
わたなべです。
なかだです。
[#16894] compile failure in process.c, setpgrp() & setpgid() — Ryo HAYASAKA <ryoh@...>
早坂@北陸先端です.
[#16923] Module::new with block is useful? — "Shin'ya Adzumi" <adzumi@...>
あづみです。
[#16978] Re: [rubyist:1343] Re: another sample for the Method — Koji Arai <JCA02266@...>
新井です。
[#16989] making Proc in C (Re: [rubyist:1356] Re: another sample for the Method) — nobu.nakada@...
なかだです。
[ruby-dev:16732] sharing sub-regexp
Oniguruma についてひとつ要望があります。 パターン中で、同じ部分パターンを複数記述しなければならない時に、最初の ひとつだけを記述して、後の部分は最初のを参照するような機能を入れられな いでしょうか? 仮に参照を行なう構文を (?*n) とし、n 番目の group (shy group を含む)を 参照するとすると、/(?:a+)(?*1)/ が /(?:a+)(?:a+)/ と等価になるというよ うなものです。 # 後方参照とは異なり、マッチした文字列ではなく、パターンそのものが入り # ます。 # なお、番号ではなく、group に名前が付けられて、名前で参照できるという # ほうが望ましいです。 ただし、内部的に複製は行なわないで部分パターンを共有するというのが前提 です。 なぜこんな機能が欲しいかというと、DFA から正規表現に変換したいからです。 正規表現は等価な DFA に比較的簡単に変換でき、DFA はマッチの条件を逆に したり、複数の DFA の共通部分にしかマッチしないような DFA を求めたりと いった操作が比較的簡単に行なえます。こういう操作ができると、いろいろと 面白い DFA が簡単に生成できます。そこで、DFA から正規表現に変換してパ ターンマッチングに使えるといろいろと楽しいわけです。 ところが、残念ながら、DFA から正規表現への変換は今のところ困難です。 この変換は理論的には可能なのですが、DFA の大きさに対して正規表現の大き さが指数関数的になってしまうので非現実的な結果になってしまうことが多々 あります。 例えば、http://www.din.or.jp/~ohzaki/regex.htm によれば、ISBN にマッチ する正規表現は 105488889066bytes になるそうです。当然ですが、こんなパ ターンは動作させることはおろか、生成することもままなりません。 ここで、なぜこんな非現実的な大きさになるかというと、正規表現の複製が大 量に行なわれるからです。そこで、パターンの複製を行なわずに共有できれば 問題は解決します。というわけで冒頭の提案のように部分パターンを共有でき る機能があるといいなぁ、ということになるんですが、これは困難でしょうか? なお、目的は DFA からの変換だけなので、共有部分で後方参照やや zero width assertion など、理論的な正規表現以外のものが使えなくてもまったく 問題ありません。むろん、自分自身を含むような部分パターンを参照すること も必要ありません。 -- [田中 哲][たなか あきら][Tanaka Akira] 「ふえろ! わかめちゃん作戦です$(C⊇」(Little Worker, 桂遊生丸)