Why is D unpopular?
Alexandru Ermicioi
alexandru.ermicioi at gmail.com
Sat Jun 11 10:49:09 UTC 2022
On Friday, 10 June 2022 at 22:44:25 UTC, forkit wrote:
> On Friday, 10 June 2022 at 20:59:38 UTC, mw wrote:
>>
>> ..
>> D is supposed to be a better OO language (read: encapsulation,
>> separation of concerns), and DMD is developed by a number of
>> highly capable very experienced D developers (read: not
>> ordinary programmers), how come DMD is in such a terrible
>> state as if it's done by some average Joel (above)?
>>
>> No offense, I am just puzzled by this software engineering
>> myth.
>
> Nonsense. D .. a better OO langauge??
>
> Do you even know how hard it is, to reason about a D module?
>
> The D module is, apparently, THE single most important
> abstraction for encapsulation - someone decided to design it
> this way.
>
> This conflicts with OO principle of being able to encapsulate
> an objects invariants in its specification. So D, a -betterOOP
> .. hah!
Welcome to single module per class. Really, I fail to understand
what's the problem with having one class per module, and import
multiple classes per module using public imports if you desire to
import multiple classes at once.
> The D module is designed to encourage shared mutability. There
> are no means to specifiy, let alone verify and enforce,
> encapasulated object invariants. They have no 'boundary' inside
> a D module - by that I mean, any other code in the same module
> can transgress any boundary that has been specified.
Which sometimes is quite useful, otherwise you'd end up with
static nested classes/structs...
> Please drop this idea, that D is a better OO langauge. It is
> not.
While it is not better per your reasoning, it is certainly not
worse than others per my experience, and at least better than
C++. I'd say on level with Java or a bit higher in functionality
and convenience.
Best regards,
Alexandru.
More information about the Digitalmars-d
mailing list