dmd 1.046 and 2.031 releases
Andrei Alexandrescu
SeeWebsiteForEmail at erdani.org
Mon Jul 6 19:10:43 PDT 2009
grauzone wrote:
>> You are just saying it's ugly. I don't think it's ugly. Walter doesn't
>> think it's ugly. Other people don't think it's ugly. Many of the
>> people who said it's ugly actually came up with proposals that are
>> arguably ugly, hopelessly confusing, or both. Look at only some of the
>> rehashed proposals of today: the genial "case [0 .. 10]:" which is
>> horribly inconsistent, and the awesome "case 0: ... case 10:", also
>> inconsistent (and gratuitously so) because ellipses today only end
>> lists without having something to their right. The authors claim those
>> are better than the current syntax, and one even claimed "beauty",
>> completely ignoring the utter lack of consistency with the rest of the
>> language. I don't
>
> I oriented this on the syntax of array slices. Which work that way.
No, it works differently because the slice is open to the right, whereas
with switch one seldom wants to specify an open range.
> Not
> inconsistent at all. It's also consistent with foreach(_; x..y).
No, it isn't consistent. It's a lose-lose proposition. If you want to
make it consistent you'd need to have ['a' .. 'z'] exclude the 'z'. That
would confuse people who expect ['a' .. 'z'] to contain 'z'. On the
other hand, if you choose to include 'z' you will confuse people who
expect behavior to be similar with that in arrays.
Going with a syntax that uses ".." just as punctuation but otherwise
firmly departs from the slice notation eliminates expectation of
semantic similarity. And the presence of the second "case" firmly
clarifies that the last label is to be included in the range, even to
the first-time reader. There would be seldom a need to check the manual
for that.
> Other than that, I realize it's not that good of a choice and it's not
> elegant at all. But I think it's still better than some of your horrible
> language crimes (including yours) that are being forced into D.
Thanks for emphasizing twice that it's about me. Yep, they're my
horrible language crimes - and those definitely include mine :o). I
genuinely appreciate the honesty, and to reciprocate, I don't think very
highly of your competence either (as every other post of yours makes
some technical mistake), and I find your attitude corrosive.
Andrei
More information about the Digitalmars-d-announce
mailing list