new DIP5: Properties 2
Bill Baxter
wbaxter at gmail.com
Tue Jul 28 13:08:48 PDT 2009
On Tue, Jul 28, 2009 at 12:01 PM, bearophile<bearophileHUGS at lycos.com> wrote:
> Bill Baxter:
>> Switch is a monstrosity pretty much any way you look at it. Sh had the right
>> idea there. Is "case" really necessary there? Some syntax should
>> suffice I would thing. And "default" is probably the world's most
>> useless keyword. Why not "else:" or "*:" instead of introducing a
>> whole new keyword?
>
> Case of Pascal is better (2 keywords where "of" isn't that useful, begin-end are optional if you want more than one instruction, Pascal isn't case-sensitive):
>
> Case X of
> 1: Begin
> ...
> End;
> 2 .. 10: Begin
> ...
> End;
> ...
> Else Begin
> ...
> End;
> End; {CASE}
>
> But D is backward compatible with C (unlike languages like Scala, that eventually D will need to take a look at), so this is an academic topic.
Except that it's very much not backwards compatible with C syntax in
constructs that are very frequent in C: typedef/alias, #define.
Changing the keywords used in a switch would be a very mechanical
transformation, like changing typedef to alias everywhere it appears
in C code you're translating.
--bb
More information about the Digitalmars-d
mailing list