From: gotoken@... (GOTO Kentaro) Date: 1998-07-01T03:41:05+09:00 Subject: [ruby-dev:3145] Re: Enumerable#reverse ごとけんです In message "[ruby-dev:3142] Re: Enumerable#reverse" on 98/07/01, "MAEDA Shugo" writes: >前田です。 >>現状の全て Array に還元して考えることにする方が単純 >>で良いのかなぁ… > >と思います。 >今のRubyのライブラリでは、BagやOrderedCollectionの役割も >Arrayにまかせてますし、コンテナクラスならとりあえずArray、 >といった感じですね。 どうもありがとうございます。自分の考えが足りないのがよく分 かりました。 結論から言うと Enumerable#reverse 削除だけに提案を改めます。 以下蛇足: 僕は「Enumerable ではなくコンテナ」をふたつに分けようと思っ ていたようです。が、あとで主張し始めたのは結局、 有界性グループ: * 有界(コンテナ) < 非有界 列性グループ: * 列 < 集合 なる直交する2つのグループ、4つのものを考えていて、 Bug(Enumerable) := 有界 な 集合 Tuple(Sequential) := 有界 な 列 Countable := 非有界 な 列 を想像したわけです。Countable っていうのはストリームのよう に先頭はあるが終わりが定まってないモノを想定しています。 それで有界なものには collect や sort はあるが、非有界なも のにはないとか、列には head や index はあるが集合にはない などのつもりでした。そう考えると Array というのは Tuple を インクルードしたObject という感じです。とにかく each の 性質(順番に意味があるか、ブロックすることがあるか)で「分け てみたかった」んです。 それはそれでかっこいいと思いますが、現在の ruby を否定し過 ぎてることになるし、現状の単純さはとてもよくできているので Sequential 云々は取り下げ、 Enumerable#reverse 削除だけに 提案を改めます。 -- gotoken