[#17615] substitution at when-clause — Takaaki Tateishi <ttate@...>

立石です.

47 messages 2002/07/01
[#17619] Re: substitution at when-clause — matz@... (Yukihiro Matsumoto) 2002/07/01

まつもと ゆきひろです

[#17621] Re: substitution at when-clause — Takaaki Tateishi <ttate@...> 2002/07/02

At Tue, 2 Jul 2002 02:54:01 +0900,

[#17622] Re: substitution at when-clause — matz@... (Yukihiro Matsumoto) 2002/07/02

まつもと ゆきひろです

[#17624] Re: substitution at when-clause — Takaaki Tateishi <ttate@...> 2002/07/02

At Tue, 2 Jul 2002 13:30:17 +0900,

[#17627] Re: substitution at when-clause — matz@... (Yukihiro Matsumoto) 2002/07/02

まつもと ゆきひろです

[#17630] Re: substitution at when-clause — Takaaki Tateishi <ttate@...> 2002/07/02

立石です.

[#17631] Re: substitution at when-clause — matz@... (Yukihiro Matsumoto) 2002/07/02

まつもと ゆきひろです

[#17635] Re: substitution at when-clause — Takaaki Tateishi <ttate@...> 2002/07/03

立石です.

[#17639] Re: substitution at when-clause — matz@... (Yukihiro Matsumoto) 2002/07/03

まつもと ゆきひろです

[#17644] Re: substitution at when-clause — keiju@... (石塚圭樹) 2002/07/03

けいじゅ@日本ラショナルソフトウェアです.

[#17645] Re: substitution at when-clause — matz@... (Yukihiro Matsumoto) 2002/07/03

まつもと ゆきひろです

[#17647] Re: substitution at when-clause — keiju@... (石塚圭樹) 2002/07/03

けいじゅ@日本ラショナルソフトウェアです.

[#17649] Re: substitution at when-clause — Takaaki Tateishi <ttate@...> 2002/07/03

At Wed, 3 Jul 2002 17:48:58 +0900,

[#17651] Re: substitution at when-clause — keiju@... (石塚圭樹) 2002/07/03

けいじゅ@日本ラショナルソフトウェアです.

[#17730] Re: self in block — masaki <GEC01122@...>

16 messages 2002/07/20

[#17764] Re: self in block — masaki <GEC01122@...>

31 messages 2002/07/22
[#17765] Re: self in block — matz@... (Yukihiro Matsumoto) 2002/07/23

まつもと ゆきひろです

[#17768] Re: self in block — Tanaka Akira <akr@...17n.org> 2002/07/23

In article <1027383423.558649.31176.nullmailer@picachu.netlab.jp>,

[#17769] Re: self in block — matz@... (Yukihiro Matsumoto) 2002/07/23

まつもと ゆきひろです

[#17770] Re: self in block — Tanaka Akira <akr@...17n.org> 2002/07/23

In article <1027404202.545188.1283.nullmailer@picachu.netlab.jp>,

[#17771] Re: self in block — matz@... (Yukihiro Matsumoto) 2002/07/23

まつもと ゆきひろです

[#17772] Re: self in block — Tanaka Akira <akr@...17n.org> 2002/07/23

In article <1027406979.880878.1358.nullmailer@picachu.netlab.jp>,

[#17832] Re: [ruby-cvs] ruby: * random.c: replace with Mersenne Twister RNG. — nobu.nakada@...

なかだです。

17 messages 2002/07/26
[#17835] Re: [ruby-cvs] ruby: * random.c: replace with Mersenne Twister RNG. — matz@... (Yukihiro Matsumoto) 2002/07/26

まつもと ゆきひろです

[#17837] Re: [ruby-cvs] ruby: * random.c: replace with Mersenne Twister RNG. — nobu.nakada@... 2002/07/26

なかだです。

[#17842] Re: [ruby-cvs] ruby: * random.c: replace with Mersenne Twister RNG. — matz@... (Yukihiro Matsumoto) 2002/07/26

まつもと ゆきひろです

[#17886] line number(Re: Re: [ruby-cvs] ruby: * random.c: replace with Mersenne Twister RNG.) — nobu.nakada@... 2002/08/02

なかだです。

[#17893] Re: line number(Re: Re: [ruby-cvs] ruby: * random.c: replace with Mersenne Twister RNG.) — matz@... (Yukihiro Matsumoto) 2002/08/03

まつもと ゆきひろです

[#17897] Re: line number(Re: Re: [ruby-cvs] ruby: * random.c: replace with Mersenne Twister RNG.) — nobu.nakada@... 2002/08/03

なかだです。

[#17973] Re: line number(Re: Re: [ruby-cvs] ruby: * random.c: replace with Mersenne Twister RNG.) — nobu.nakada@... 2002/08/11

なかだです。

[ruby-dev:17836] Re: self in block

From: matz@... (Yukihiro Matsumoto)
Date: 2002-07-26 10:10:19 UTC
List: ruby-dev #17836
まつもと ゆきひろです

In message "[ruby-dev:17833] Re: self in block"
    on 02/07/26, masaki <GEC01122@nifty.ne.jp> writes:

|いま考えてみると、私の提案は block の形式に手を付けなくても
|initialze で context を切替える手段さえ用意してもらえれば良かった
|わけですが、それでも
|"self の切替えまではゆるせても、context の切替えはもっと困る。"
|ので却下ということですね。

せっかく「ということですね」とまとめてくださいましたが、私が
そんなことを発言しましたっけ? あるいはほかの誰かが。

私の正木案に対する発言の意図をまとめておきます。

  * 正木案はselfのすり替えを含むので却下。<>か||でブロックの
    挙動が大幅にかわるのは良くない。条件も複雑過ぎ。

  * selfのすり替えを仕様に含む必然性を認めない。したければ
    define_methodやinstance_evalを使って自分でやること

次に正木さんが感じた「解決すべき」問題については

  * 無名関数が自分を参照する方法は、あまり必要性を感じない。
    単に名前ひとつだけの問題なので。解決するならばJavaScript
    のような方法が良かろう(calleeとかね)が。

  * ブロックの外側の名前に影響されないことが欲しい場合は確か
    にある。が、それがどういう手段で実現されるべきかは結論が
    出ていない。外側の変数にアクセスできないのも困るし、名称
    の重複を気にしたくはないし。

ということで、少なくとも私は "context の切替えは良くない"とい
う趣旨の発言をしていないので、

|この "context の切替えは良くない" という理由を私が理解していないのが、
|話が噛み合わない原因のような気がします。

という「理由」は私にも分かりません。

|両方同時に解決する方法がまづいのなら、分離方式に反対する理由は全くあ
|りません。

両方同時に解決する方法がまずいという点は理解していただけたと
すると、

|"ブロックパラメーターと := で代入された変数はブロックローカルにする。"
|というのが一番よさそうな気がします。

これはしごく妥当な感想だと思います。でも、正直なところ私はこ
れにもまだ自信が無いのです。いざ採用するとなると互換性もあり
ますし、それが本当に「Ruby流」なのかということにもやや疑問が
ありますし。

                                まつもと ゆきひろ /:|)

In This Thread

Prev Next