[#13434] irb message typo — Kazuhiro NISHIYAMA <zn@...>
typoだと思います。
[#13455] ext/extmk.rb.in — Kazuhiro NISHIYAMA <zn@...>
ext/extmk.rb.inですが、'w'でopenするのならreadable?ではなく
わたなべです。
[#13463] [BUG?] mutex_m.rb — akira yamada / やまだあきら <akira@...>
まつもと ゆきひろです
[#13479] [BUG] Segmentation fault — Kazuhiro NISHIYAMA <zn@...>
文字列操作しているところで[BUG] Segmentation faultとでて
まつもと ゆきひろです
In <991811793.511554.930.nullmailer@ev.netlab.zetabits.com>
まつもと ゆきひろです
[#13486] drive letter on mingw32 — nobu.nakada@...
なかだです。
まつもと ゆきひろです
こんにちは、なかむら(う)です。
[#13493] yield *[[]] — Tanaka Akira <akr@...17n.org>
しばらく前に、yield *[[]] の挙動に関して bug report をして、まつもとさ
なかだです。
In article <200106071409.XAA21101@sharui.nakada.kanuma.tochigi.jp>,
まつもと ゆきひろです
In article <991988462.179562.20598.nullmailer@ev.netlab.zetabits.com>,
まつもと ゆきひろです
In article <992009406.425405.24078.nullmailer@ev.netlab.zetabits.com>,
まつもと ゆきひろです
asgn.rb を読んでみましたが... なんというか nil.to_a が [] であることを
まつもと ゆきひろです
In article <992022213.746115.25347.nullmailer@ev.netlab.zetabits.com>,
前田です。
Shugo Maedaさんの<87lmn336s3.wl@localhost.netlab.jp>から
前田です。
Shugo Maedaさんの<87hexr316u.wl@localhost.netlab.jp>から
前田です。
まつもと ゆきひろです
前田です。
In article <m38zj242y9.wl@localhost.localdomain>,
原です。
In article <4.3.2-J.20010612154813.02c89a70@blade.nagaokaut.ac.jp>,
原です。
In article <4.3.2-J.20010612185543.00c8b988@blade.nagaokaut.ac.jp>,
原です。
まつもと ゆきひろです
原です。
まつもと ゆきひろです
原です。
まつもと ゆきひろです
まつもと ゆきひろです
In article <992410104.066682.22743.nullmailer@ev.netlab.zetabits.com>,
In article <hvor8wo501g.fsf@flux.etl.go.jp>,
まつもと ゆきひろです
In article <992533086.935976.4066.nullmailer@ev.netlab.zetabits.com>,
まつもと ゆきひろです
まつもと ゆきひろです
まつもと ゆきひろです
まつもと ゆきひろです
けいじゅ@日本ラショナルソフトウェアです.
金光です。
まつもと ゆきひろです
金光です。
前田です。
けいじゅ@日本ラショナルソフトウェアです.
金光です。(^_^)
[#13535] File::fnmatch to go — "Akinori MUSHA" <knu@...>
そろそろ File::fnmatch の件を決着させたいので最終提案です。
[#13564] Dir::open(){} — keiju@... (Keiju ISHITSUKA)
けいじゅ@日本ラショナルソフトウェアです.
[#13624] Forward: Re: [ruby-talk:16677] Re: Problem running irb with Ruby 1.6.4 under FreeBSD 4.0 — matz@... (Yukihiro Matsumoto)
まつもと ゆきひろです
わたなべです。
[#13626] Syncronizing the 1.6 libraries with the 1.7 ones — "Akinori MUSHA" <knu@...>
標準添付ライブラリの 1.6 と 1.7 での違いを調べてみたのですが、
[#13631] 超漢字 ruby が落ちる — "TOYOFUKU Chikanobu" <toyofuku@...>
豊福です。
[#13650] Re: [ruby-ext:01803] Re: Ruby/SDL on PS2 LinuxKit — WATANABE Hirofumi <eban@...>
わたなべです。
まつもと ゆきひろです
まつもと ゆきひろです
なかだです。
なかだです。
まつもと ゆきひろです
なかだです。
まつもと ゆきひろです
なかだです。
こんにちは、なかむら(う)です。
まつもと ゆきひろです
なかだです。
なかだです。
まつもと ゆきひろです
なかだです。
まつもと ゆきひろです
まつもと ゆきひろです
まつもと ゆきひろです
なかだです。
まつもと ゆきひろです
なかだです。
まつもと ゆきひろです
なかだです。
有馬です。
なかだです。
有馬です。
In message <200107301156.AA00175@fit0298.fitec.co.jp>
[#13652] very long array and GC. — Tanaka Akira <akr@...17n.org>
ふと、とても長い配列を使う機会があったのですが、なんとなく遅いことに気がつきました。
Tanaka Akiraさんの<hvoithjwz23.fsf@flux.etl.go.jp>から
In article <200106260640.PAA12913@zeus.sofnec.co.jp>,
まつもと ゆきひろです
In article <993540668.285220.13545.nullmailer@ev.netlab.zetabits.com>,
[#13666] net/http.rb warnings — nobu.nakada@...
なかだです。
あおきです。
なかだです。
[#13668] ruby_m17n make error — TAKAHASHI Masayoshi <maki@...>
高橋征義です。
まつもと ゆきひろです
高橋征義です。
まつもと ゆきひろです
高橋征義です。
豊福です。
[#13672] irb/ruby-lex.rb — GOTO Kentaro <gotoken@...>
引数の数が間違ってるのは確かですが、これで正しいのか自信はあ
[#13705] eval(code, true, filename) — Shugo Maeda <shugo@...>
前田です。
まつもと ゆきひろです
前田です。
Shugo Maedaさんの<wkithdwg3r.wl@STUDLY.priv.netlab.jp>から
[ruby-dev:13616] Re: yield *[[]]
まつもと ゆきひろです
In message "[ruby-dev:13598] Re: yield *[[]]"
on 01/06/15, Tanaka Akira <akr@m17n.org> writes:
|で、実際の挙動をほんのすこし調べてみたところ、奇妙に思える挙動が発見さ
|れました。
|
|% ruby -e 'class A; def f(a); p a; end; end; A.new.method(:f).to_proc.call([1])'
|1
|% ruby -v
|ruby 1.7.1 (2001-06-07) [i386-freebsdelf4.2]
|(なお、1.6.4 でも 1 になるが、なぜか 1.6.2 では [1] になる。)
[ruby-dev:13299]の副作用ですね。
|* 単値の入口から単値の出口へデータが通過する場合、代入(多重代入)のよう
| な挙動をすること。(代入の挙動自体が議論中ではありますが。)
|* 多値の入口から多値の出口へデータが通過する場合、通常のメソッド呼び出
| しのような挙動をすること。
|* 単値の入口から多値の出口へデータが通過する場合、変換が一回だけ起こること。
|* 多値の入口から単値の出口へデータが通過する場合、変換が一回だけ起こること。
|* wrapper を定型的に記述可能なこと。
|* 単値から多値への変換は一種類であること。
|* 多値から単値への変換は一種類であること。(Proc#call と Proc#yield で
| 異なるとすればこれは無理?)
|
|ただし、希望を満たす仕様がちゃんと存在するかどうか私にもわからないので、
|かなわない希望なのかも知れないんですが...
つらつらと考えてみました。
* 単値と呼ばれているものは実は2種類ある。
* 片方はすべて配列で表現されるもので、多値と呼ばれているも
のと完全に対応する(たとえばメソッドの引数を*argsで受けた
場合や代入左辺の*aなど)。
* もうひとつは、0要素の多値をnil、1要素の多値をその要素自身、
2要素以上の多値をその要素を持つ配列で表現したものである。
* 多値と前者は同一視してかまわない。
* Rubyで一般的に用いられている単値は後者である。
* ここでは説明のため仮に前者にmvalue(multiのm)、そして後者
にsvalue(singleのs)と名前を付ける。
* 問題になる点はmvalueとsvalueが1対1対応できない点である。
たとえば、現在の変換方法ではmvalueの[]と[nil]は両方とも
svalueのnilに変換される。svalueの[1]はmvalueの[1]に変換す
べきか、[[1]]に変換すべきか状況によって異なる(が、判断す
る情報が既に落ちている)。
* 問題になるのはmvalueにおいて要素がひとつだけで、かつその
唯一の要素がnilまたは配列である場合だけである。
と、ここまで考えて
* 現状で情報が欠損しているなら、残してやれば良い。
つまり、mvalueにおいて要素がひとつだけで、その要素がnilま
たは配列である場合を特別扱いすれば良い。具体的にはsvalue
への変換で、[1]は1に変換するものの、[nil]や[[1]] は変換せ
ずにそのままsvalueとする。
というのはどうだろうと考えました。以前のtest suiteとは互換性
がないですが、まあ、それ自身で筋が通っているならそれはそれで
良かろうと考えました。
で、実践してみたのですが、やや問題が残りました。
def each2(&block); [[2]].each {|*x| p x; block.call(x)}; end
each2{|x|p x}
def each3(&block); [[2]].each {|x| p x; block.call(x)}; end
each3{|x|p x}
のようなケースで互換性がないのです(配列の配列が渡るため、変
換が発生せず、xに[[2]]が代入されてしまう)。そこで、yieldでブ
ロックパラメータが単純代入である場合に限って、1要素の配列は
かならず転換するようにして互換性を維持しようとしましたが、気
持ち悪さはぬぐえません。
とりあえず、とても最終仕様とは呼べませんが、ためしに実装した
ものをCVSにコミットしてみます。ひまのある方は試してみてくだ
さい。
まつもと ゆきひろ /:|)