Tim Pease wrote:
> On 7/16/07, ara.t.howard <ara.t.howard / gmail.com> wrote:
>>
>> On Jul 16, 2007, at 7:22 AM, Raphael Gillett wrote:
>>
>> > It is particularly puzzling that Ruby should hobble its
>> > users in this way, because it is manifestly unnecessary (e.g., Fortran
>> > and Pascal don't do it).
>>
>>
>> and we all know how 'natural' *those* languages are do program in
>> (ducks)...
>>
> 
> Actually, if Ruby had been implemented in Fortran or Pascal, then most
> certainly arrays would have begun indexing with 1 instead of 0.
> However, since it was implemented using C, Ruby follows the convention
> of implementation.
> 
> And we all know how easy it is to program in C ;-)

I always thought it made more sense to index from zero.  After all, an
index represents an offset from the start, and the rest of the aspect is
just a one to one correspondence.  The first thing there could as easily
be item Skattlebraught, the second being item Porktail, etc.  The
standard of C using 0 as an index happened because it made sense, not
because it was merely different.  I think Matz has typically adopted
things that make the most sense, and though some may not be used to
this, I don't find it unclear and it is more rational than starting with
index 1, though it may be less popular among some people.  I think we
are always better off considering the adoption of something non-standard
that might be better.  After all, if not, we would never have gotten
beyond COBOL and JCL, and we might all be living some "Brazil" Orwellian
nightmare.

> 
> Blessings,
> TwP
> 
> 


-- 
The only sustainable organizing methods focus not on scale,
but on good design of the functional unit,
not on winning battles, but on preservation.