Array indices and (in|ex)clusive ranges
Steven Schveighoffer
schveiguy at yahoo.com
Wed Jul 8 19:39:24 PDT 2009
On Wed, 08 Jul 2009 13:48:01 -0400, Michiel Helvensteijn
<m.helvensteijn.remove at gmail.com> wrote:
> I've been reading the "Case Range Statement" topic with some interest.
>
> It has occurred to me that all those problems would be solved if array
> indices started with 1 instead of 0. Just let arrays be indexed from 1 to
> size and make the a..b syntax inclusive.
>
> I'll be expecting this change to be put in D forthwith. ;-)
>
> No, but seriously. Complete loss of backwards compatibility aside,
> wouldn't
> this change solve the range problem to everyones satisfaction? Like, in
> theory?
Maybe, but it sure introduces a plethora of other problems :) For
instance, all reasonable processors use 0-based indexes, so you have to
shoehorn your 1-based design into it, causing some code bloat, and loss of
performance.
Using zero-based indexes has many advantages, and you have to look at the
whole picture, not just range statements.
-Steve
Marty: Why don't you just make ten louder and make ten be the top number
and make that a little louder?
Nigel: [pause] These go to eleven.
More information about the Digitalmars-d
mailing list