Argumnentation against external function operator overloading is unconvincing
pineapple via Digitalmars-d
digitalmars-d at puremagic.com
Sun Sep 25 06:40:14 PDT 2016
On Sunday, 25 September 2016 at 11:48:38 UTC, Jonathan M Davis
wrote:
> It's because ranges are effectively a sliding window over
> whatever they're iterating over.
I think this is the difference in perception - ranges do not
_have_ to be sliding windows, they can just as well be windows
that don't move. I find the latter approach to be more workable
and intuitive that the former, and in almost every case the
approach results in more concise and performant code for
performing those operations.
When would I ever want `range[0]` to give me the same thing as
`range.front`? I want it to give me the first item in the range's
view at the time of its creation.
I strongly oppose any change that makes the former approach an
inherent part of D. I honestly don't think the latter approach
should be an inherent part of D, either, but I'd have a hell of a
time trying to use the language if it wasn't an option.
More information about the Digitalmars-d
mailing list