No we should not support enum types derived from strings
deadalnix
deadalnix at gmail.com
Mon May 10 22:58:41 UTC 2021
On Monday, 10 May 2021 at 22:37:51 UTC, Ola Fosheim Grøstad wrote:
> On Monday, 10 May 2021 at 21:44:02 UTC, deadalnix wrote:
>> The bad news is, there is already a language like this. It's
>> called C++, and it's actually quite successful. With all due
>> respect to you and Walter, you guys are legends, but I think
>> there is also a bit of learned helplessness coming from both
>> of you due to a lifetime of exposure to the soul corroding
>> effects of C++.
>
> Not sure how this applies to C++, what subtyping issues are you
> having with C++?
>
Function type don't have the right covariance/contravariance, you
can slice subtypes, and there are more, but this is not my point.
My point is that we already have a language that is a mixed bag
of accidentally defined features that don't compose properly with
each others. I don't need one more of these, I already have one,
and, let's be frank, it has at the very least an order of
magnitude more support in the wild, in tools and so on.
Doing the same thing with less manpower is a futile exercise.
>> This attitudes pervades everything, and most language
>> constructs suffer of some form of it in one way or another,
>> causing a cascade of bad side effects, starting with this
>> whole thread. A few examples en vrac for instance: DIP1000,
>> delegate context qualifiers, functions vs first class
>> functions, etc...
>
> That's a direct result of the process. Features have always
> been added as an experiment rather than being completed on
> paper, even the ones with a DIP. At this point, this pretty
> much defines what D is... Just look at the addition of a C
> compiler that is being advanced right now. It is being added
> because there might be some benefits from it the future,
> perhaps. Of course, you also have the side effect that the AST
> becomes more resistant to change... and refactoring costs
> doubles...
>
> So that is why D has these issues. People wanted something, and
> it was added in an experimental way, not in an analytical way.
> That is the way of D. Experiment in features.
>
Sure, but look at this thread. D is crumbling under the weight,
not of the number f feature, but of the fact that a large portion
of them simply are unsound.
At this point, the decision made is to push the madness on the
user. Fair enough, but if the standard lib devs are not willing
to put up with it, why in hell would you expect anyone else to?
Just look at what's in the C++ standard lib or boost and compare
to your average C++ project to see the kind of gap in term of
motivation to put up with bullshit exists between standard lib
devs and Joe coder. It's not even close.
This stuff ain't working properly so let's just given getting to
work at all is not how you iterate toward a great useful product.
More information about the Digitalmars-d
mailing list