"with" still sucks + removing features + adding features

Andrei Alexandrescu SeeWebsiteForEmail at erdani.org
Mon May 18 14:55:49 PDT 2009


Jason House wrote:
> Andrei Alexandrescu Wrote:
> 
>> Jarrett Billingsley wrote:
>>> On Mon, May 18, 2009 at 1:46 PM, Andrei Alexandrescu
>>> <SeeWebsiteForEmail at erdani.org> wrote:
>>>
>>>> Final switch works with enums and forces you to handle each and every value
>>>> of the enum. Regular switch gets ranged cases by the syntax case a: .. case
>>>> b: (I've always thought switch would be greatly helped by that).
>>> Kind of an odd syntax.  Why not "case a .. b:"?  Parsing issues?
>> It's consistency. Everywhere in the language a .. b implies b is 
>> excluded. In a switch you want to include b. So I reflected that in the 
>> syntax. In fact, I confess I'm more proud than I should be about that 
>> little detail.
> 
> Consistency???
> 
> While I can see where you're coming from, I still see plenty of inconsistencies. It's still a range (defined with .. too). Having slices and foreach use syntax a and meaning 1 but switch using syntax a' and meaning 2 kind of sucks. 

You'd have to squint real hard to see a range. A range is

expr1 .. expr2

That code is

case expr1: .. case expr2:

I mean you can't tell me that as soon as ".." is within a mile it's a range.


Andrei



More information about the Digitalmars-d mailing list