[#21225] Re: [ruby-cvs] ruby: * enum.c (inject_i): use rb_yield_values. — "U.Nakamura" <usa@...>

こんにちは、なかむら(う)です。

14 messages 2003/08/22
[#21227] Re: [ruby-cvs] ruby: * enum.c (inject_i): use rb_yield_values. — nobu.nakada@... 2003/08/22

なかだです。

[#21228] Re: [ruby-cvs] ruby: * enum.c (inject_i): use rb_yield_values. — matz@... (Yukihiro Matsumoto) 2003/08/22

まつもと ゆきひろです

[#21281] 大量メモリ消費攻撃に対する対応 — Hidetoshi NAGAI <nagai@...>

永井@知能.九工大です.

16 messages 2003/08/29
[#21285] Re: 大量メモリ消費攻撃に対する対応 — matz@... (Yukihiro Matsumoto) 2003/08/29

まつもと ゆきひろです

[#21288] Re: 大量メモリ消費攻撃に対する対応 — Hidetoshi NAGAI <nagai@...> 2003/08/29

永井@知能.九工大です.

[#21306] Re: 大量メモリ消費攻撃に対する対応 — matz@... (Yukihiro Matsumoto) 2003/09/03

まつもと ゆきひろです

[ruby-dev:21126] Re: [Oniguruma] explicit capture

From: kkosako@...
Date: 2003-08-04 09:42:38 UTC
List: ruby-dev #21126
> -----Original Message-----
> From: Tanaka Akira [mailto:akr@m17n.org]
> >   /(?<name>...)/.vmatch("abc")
> >
> ....   
> というものなわけですが、後者の要求を満たそうとすると、どうしてもリテラ
> ルとそれ以外の式を別に扱う必要があります。そのように式として評価すると
> 同じ値になるのに異なる扱いをするという仕掛けには、普通のメソッド呼び出
> しという形式はあまりに普通すぎて、その特別扱いが違和感を生じるように思
> います。

メソッドコール(vmatch)の場合には、レシーバがリテラルでも変数でも
ローカル変数に結果をmapする、というつもりでした。
正規表現が変数にセットされているからといっても、予測不可能なほど
変化する場合だけとは限らないので、機能として提供されていても良いかなと
考えていたのですが、必要性は低いかもしれません。

> それに対し、= の左辺は評価される式じゃありませんから違和感がないわけで
> すが、先に述べた通り他の = との返値に関する一貫性の問題があります。
> 
> で、もしかしたら、=~ や when が
> 
>   /(?<name>...)/ =~ "abc"
> 
>   case "abc"
>   when /(?<name>...)/
>   ...
>   end
> 
> という形で使われた時を特別扱いするのがいいのではなかろうか、という気が
> して来ました。これらは、形としてはメソッド呼び出しではないので、リテラ
> ルの特別扱いによる違和感が少ないですし、新しい記法を導入しないので既存
> の構文と自然に融合します。

賛成です。
ただ、named groupの導入からローカル変数へ反映させる機能追加までに
時間がかなり空いてしまうと、新しい記法にしなければならなくなるかも。
--
小迫@出向中

In This Thread

Prev Next