dmd 1.046 and 2.031 releases
Andrei Alexandrescu
SeeWebsiteForEmail at erdani.org
Mon Jul 6 16:32:55 PDT 2009
Leandro Lucarella wrote:
> Andrei Alexandrescu, el 6 de julio a las 10:44 me escribiste:
>>>> And what did those people use when they wanted to express a range of case
>>>> labels? In other words, where did those people turn their heads towards?
>>> They probably used an if.
>> So they used an inferior means to start with.
>
> Yes, but when you try to make people move to a different language, you
> have to do considerably better. When I have to choose between something
> well know, well supported and mature and something that is, at least,
> unknown (even if it's mature and well supported, I won't know that until
> I use it a lot so is a risk), I want to be really good, not just barely
> good.
That goes without saying.
> Details as this one are not deal breaker on their own, but when they are
> a lot, it tends to make the language look ugly as a whole.
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
claim expertise in language design, so I wish there were a few good
experts in this group.
> What bugs me the most is there are a lot of new constructs in the language
> that are plain ugly, from the start. D is buying it's own baggage
> (__traits, enum for manifest constants, now the case range, and I'm sure
> I'm forgetting something else) with no reason...
I agree there are ugly constructs in D, and is-expressions would near
the top of the list (particularly the absolutely awful is(T : T[])), but
you have no case (heh) with the switch statement.
Andrei
More information about the Digitalmars-d-announce
mailing list