[#3747] constants (or class vriable?) — Wakou Aoyama <wakou@...>
青山です。
原です。
青山です。
まつもと ゆきひろです
In message <199812080034.JAA05946@picachu.netlab.co.jp>
立石です。
まつもと ゆきひろです
[#3773] pack("M")/unpack("M") — shugo@... (MAEDA Shugo)
前田です。
[#3794] port NetBSD/ alpha 1.3I — SHIROYAMA Takayuki <psi@...>
[#3826] ruby 1.1d0 released — matz@... (Yukihiro Matsumoto)
まつもと ゆきひろです
渡辺哲也です。
ふなばです。
笠原です。
前田です。
[#3851] tkutil patch (for 1.1d0) — ttate@...
立石です。
[#3859] missing/setenv.c in 1.1d0 — Inaba Hiroto <inaba@...>
稲葉です。こんなにパッチがあると、みのがされてしまうかも。
[#3862] 1.1d0 new here document — Wakou Aoyama <wakou@...>
青山です。
まつもと ゆきひろです
青山です。
まつもと ゆきひろです
[#3873] (?: ) does not work? — shugo@... (MAEDA Shugo)
前田です。
まつもと ゆきひろです
前田です。
まつもと ゆきひろです
前田です。
白山@Stellarです。
[#3881] I want to catch all jump — shugo@... (Shugo Maeda)
前田です。
まつもと ゆきひろです
前田です。
まつもと ゆきひろです
[#3894] ruby 1.1d1 released — matz@... (Yukihiro Matsumoto)
まつもと ゆきひろです
わたなべです.
[#3899] interpreter reinitialization — shugo@... (Shugo Maeda)
前田です。
まつもと ゆきひろです
前田です。
まつもと ゆきひろです
前田です。
まつもと ゆきひろです
前田です。
まつもと ゆきひろです
[#3962] ruby 1.3(!) released — matz@... (Yukihiro Matsumoto)
まつもと ゆきひろです
[#3966] [BUG] exception in safe level 4 — shugo@... (Shugo Maeda)
前田です。
[#3997] [BUG] "#{}" while 1 — gotoken@... (GOTO Kentaro)
ごとけんです
まつもと ゆきひろです
[#4002] config.guess — Koji Arai <JCA02266@...>
新井です。
まつもと ゆきひろです
新井です。
まつもと ゆきひろです
新井です。
まつもと ゆきひろです
笠原です。
まつもと ゆきひろです
えぐち@エスアンドイー です。
[#4005] [BUG] ruby 1.3(98/12/24) [i686-linux] at rb_gc_mark() — Ryo HAYASAKA <hayasaka@...>
早坂@会津大学といいます。
In message "[ruby-dev:4005] [BUG] ruby 1.3(98/12/24) [i686-linux] at rb_gc_mark()"
早坂@会津大学です。
[#4015] Integer proper methods — gotoken@... (GOTO Kentaro)
ごとけんです
[#4030] module Precision — gotoken@... (GOTO Kentaro)
ごとけんです
ごとけんです
まつもと ゆきひろです
ごとけんです
けいじゅ@日本ラショナルソフトウェアです.
ごとけんです
まつもと ゆきひろです
まつもと ゆきひろです
ごとけんです
まつもと ゆきひろです
ごとけんです
ごとけんです
けいじゅ@日本ラショナルソフトウェアです.
ごとけんです
まつもと ゆきひろです
まつもと ゆきひろです
まつもと ゆきひろです
ごとけんです
ごとけんです
けいじゅ@日本ラショナルソフトウェアです.
ごとけんです
けいじゅ@日本ラショナルソフトウェアです.
ごとけんです
けいじゅ@日本ラショナルソフトウェアです.
ごとけんです
けいじゅ@日本ラショナルソフトウェアです.
最近あんまり建設的でないわたし.
けいじゅ@日本ラショナルソフトウェアです.
ごとけんです
原です。
[#4032] [Req] make-symbol? — shugo@... (Shugo Maeda)
前田です。
[ruby-dev:3788] Re: List()
原です。
In message "[ruby-dev:3784] Re: List()"
on 98/12/09, MAEDA Shugo <shugo@aianet.ne.jp> writes:
|
|前田です。
|原> でもせっかくのアイデアなのにケチつける?:-)
|
|ケチをつけるというわけではないのですが、
いえ、せっかくのアイデアというのは x,y=[1,2] #=> x=1; y=2 とい
うまつもとさんのアイデアのことで、私の *x= のアイデアであ、じゃ
なかった、では、ないです。私のは十分にケチをつけてもらわないと。
(^^;
どうも前田さんの感じていることが微妙に私の感じとちがうので、
ひとつひとつ確認のためのコメントをつけます。
|...やはり配列とリストを
|区別する/しない、というのは、どちらかに統一すべきような気が
|しています。
|
|each_with_indexを
|
| def each_with_index
| i = 0
| each { |*x|
| yield(*(x + i))
| i += 1
| }
| end
|
|のようにパラメータを展開して渡すようにしたとします。
|
|とすると、現状のHash#eachではyield([key, val])としている
|わけですが、...
そうですね。多分現状はyield(key, val)と書かれていると考え
ていいと思いますが、もし私の案が仕様になれば、以前と同じ
動作をさせるためにはyield([key, val])と書き直さなければな
らないです。
|...これは[key, val]という一つの値を渡している
|わけではなくて、key, valという二つの値を渡すことを意図
|しているわけですから、
意図はそうですね。配列を渡したいわけではなく、2つの
値を渡したいんですね。それが出来ないので配列を「利用」
しているだけですね。
|{"key"=>"val"}.each_with_index {|key, val, i|
| p key #=> "key"
| p val #=> "val"
| p i #=> 0
|}
|
|となる方が、
|
|{"key"=>"val"}.each_with_index {|key, val, i|
| p key #=> ["key", "val"]
| p val #=> 0
| p i #=> nil
|}
|
|よりも自然だと思います。
私も前者の方が自然だと思います。しかし現在の動作は後者である。
そして、将来も互換性を保つためにそれを守る事になると思います。
なぜ後者が現在の仕様であるかというと、それは現在の yield の仕
様ではそれが最も実装がシンプルだからですね。(私の案が採用され
れば前者も同じぐらい実装はシンプルになります。)
ここまではほぼ完全に同意できるわけですが、
|つまりyieldで配列を渡した時に、一つの値として配列を渡すという意図が
|あったのか、複数の値を渡すという意図があったのかは、結局区別できな
|いわけですから、|*x|で受けた時に配列が渡されたことがわかったとしても、
|yieldした側がどちらの挙動を望んでいるかわからないのではないでしょうか。
ここが良く分からないです。分からないからちゃんと返答できなくて、
一方的に自分の意見を述べてそちらが私が何が分からないのか汲んで
くれる事を期待することになるわけ(^^; ですが 、、、
私の案が仕様になった場合は、配列を渡したい時は yield に配列を
渡し、複数の値を渡したい時は yield にリストを渡します。それが
プログラミングの作法となるわけで、自然な作法だと思います。で、
それはどちらであっても多くの場合同じ効果しか生まないのですが、
たまに (新しい)each_with_index の様に差が出るわけです。
現在までに書かれているイテレータ定義の多くはそれを区別しない
で書かれていて、その意図がどちらであるのかイテレータの利用者
は分かりません。本来はイテレータの作者に新しい仕様向けに書き
直してもらわないといけないわけです。書き直してもらうと、いい
こと(利用者の料理のレパートリーが増えるということ)があるわけ
です。
にもかかわらず、ほとんどの場合、イテレータの定義を書き直さな
くてもいままでと同じ動作をすると思います。(だいたい 95% ぐら
い、、、ほんと?)
将来「なぜ each_with_index のブロックパラメータは x, y, i を
出さずに [x, y], i を出して来るの?」という質問が出ると思いま
すが、それは歴的事情だと説明する事になるでしょう。
、、、というのが、私の考えている事なんだけどなあ。
|>>>>> In [ruby-dev:3780]
|>>>>> "原" == Shin-ichiro Hara <sinara@blade.nagaokaut.ac.jp> san wrote:
|>> 卒論を書くマシンにrubyがインストールされているのが悪いんです。
|
|原> その卒論のタイトル知りたいなあ。
|
|まつもとさんのご指摘のように哲学科なのですけどよいですか? (^^;
前田さんがフランス哲学なのは前の第-1回 Ruby Conference で知っ
ています。
|「システムにとって意図とは何か」という題目で、ルーマンの社会
|システム理論とアンスコムやデイヴィドソンの行為論を扱っています。
それって仏哲ですか?アメリカの社会学の様な感じ。:-)
「システムにとって意図とは何か」うーむ興味深い。次の Conference
では是非ご高説を賜わりたいです。(^^