On 06/01/2010 04:20 PM, Steven Schveighoffer wrote:
On Tue, 01 Jun 2010 17:12:29 -0400, Andrei Alexandrescu
<[email protected]> wrote:

On 06/01/2010 04:06 PM, Steven Schveighoffer wrote:
On Tue, 01 Jun 2010 13:54:01 -0400, Andrei Alexandrescu
<[email protected]> wrote:

The output of the program is:

0 Tuple!(uint,uint)(0, 0)
1 Tuple!(uint,uint)(0, 1)
2 Tuple!(uint,uint)(1, 1)
3 Tuple!(uint,uint)(1, 0)
4 Tuple!(uint,uint)(0, 2)
5 Tuple!(uint,uint)(1, 2)
6 Tuple!(uint,uint)(2, 2)
7 Tuple!(uint,uint)(2, 0)
8 Tuple!(uint,uint)(2, 1)
9 Tuple!(uint,uint)(0, 3)
10 Tuple!(uint,uint)(1, 3)
11 Tuple!(uint,uint)(2, 3)
12 Tuple!(uint,uint)(0, 4)
13 Tuple!(uint,uint)(1, 4)
14 Tuple!(uint,uint)(2, 4)

It looks like you're missing some iterations there.

-Steve

There should be 5 * 3 = 15 iterations.

Oh, I didn't realize the input was not two infinite ranges. I was
looking at this as the first 15 lines from the output of 2 infinite
ranges. I expected to see (3, 0), (3, 1), (3, 2), and (3, 3).

My bad, I guess I should have read the code.

-Steve

Funniest thing is the infinite ranges code was _much_ easier to get right. I got it rolling in a few minutes. It was the limit conditions for the finite ranges that killed me.

Andrei

Reply via email to