中尾です。

集合論の記法では、
  0=φ(空集合)
  1={0}
 2={0,1}
  3={0,1,2}
  ....
  m={0,1,2,...,m-1}
なので、
   0.map{|x| f(x)}
は何もしない(0を返す?)ことにして、
   m.map{|x| n.map{|y| f(x, y)}}
は
   (0...(m-1)).map{|x| (0...(n-1)).map{|y| f(x, y)}}
と同一と解釈した方が気分が出ます。

しかし、m.map{|x| f(x)}が必要かどうかについては、
特に意見はありません。

Shin-ichiro HARA wrote:

> 原です。
> 
> 
>>>Integer に each を times と同じ意味で定義し、
>>>Enumerable を include させてしまったらどうでしょうね。
>>
>>Range があるから、Integer が enumerable でなくてもいいんじゃない?
>>
>>--
>>いけがみ@まっどさいえんてぃすと
> 
> 
> なくてもいいんですが、あった方がかっこいいのではないか、
> と思うんですけどね。例えば2変数関数 f(x, y) の m 行 n
> 列の表を作るのに
> 
>   (0...m).map{|x| (0...n).map{|y| f(x, y)}}
> 
> とするより、
> 
>   m.map{|x| n.map{|y| f(x, y)}}
> 
> の方がきれいじゃないですか。
>