[REBOL] Re: Millennium + 1 ...
From: rebol:techscribe at: 5-Jan-2001 14:55
Hi Gabriele,
0 is the privileged neutral position of the counter, where left and
right meet. Everything in a block is either to the left or to the right
of the counter.
Because there can be no element located at the privileged counter
position, therefore pick block 0 always returns none. If you change that
you create a mess. You create the exact same mess, whether you introduce
0 as the first index to the right or to the left.
Case 1) The current situation:
+ == to the right
- == to the left
1 == first
2 == second
3 == third
4 == fourth
+1 first index to the right
-1 first index to the left
+2 second index to the right
-2 second index to the left
+3 third index to the right
-3 third index to the left
+4 fourth index to the right
-4 fourth index to the left
and so on
Case 2) Introduce 0 in either direction, and you lose the simplicity of
the scheme, it becomes counter-intuitive:
Case 2a) 0 as first index of block
0 == first
1 == second
2 == third
0 first index to the right
-1 first index to the left
+1 second index to the right
-2 second index to the left
+2 third index to the right
-3 third index to the left
+3 fourth index to the right
-4 fourth index to the left
You see it becomes confusing in two respects: second maps to 1, third
maps to two, and what is two steps away to my right is +1, whereas what
is also two steps but to my left -2 not -1, i.e. chaos.
Case 2b) 0 as first index preceding the first element of the block (the
first negative index, i.e. to the left)
+1 first index to the right
0 first index to the left
+2 second index to the right
-1 second index to the left
+3 third index to the right
-2 third index to the left
+4 fourth index to the right
-3 fourth index to the left
What did you win versus case 2a)? It's the same mess in reverse. This
time the counter-intuitive stuff is happening on the left, in the
negative area. But you are still mapping second to 1, and third to 2,
and you what on the right is +2 on the left is now -1. You lose the
symmetry.
Hope this makes it a little clearer,
Elan