What are the prominent downsides of the D programming language?

mw mingwu at gmail.com
Tue Sep 29 21:43:03 UTC 2020


On Tuesday, 29 September 2020 at 21:19:35 UTC, Jean-Louis Leroy 
wrote:
> In reply to mw and jmh530:
>
> I looked a bit at Eiffel circa 2000 and, to be frank, I didn't 
> like it. I think that it belongs to the category of Object 
> Obsessed languages, where everything is (has to be) an object, 
> and every function has to be a member. This contradicts the

I don't like the Eiffel's pure OO treatment either: everything in 
the world has to be modeled as object, which does not always make 
sense.

> On the other hand, I like it that Eiffel has multiple 
> inheritance. I did a bit of reading today and it seems to offer 
> flexibility regarding shared and repeated inheritance. In 
> particular, it is not decided by the direct subclasses (like 
> with C++'s virtual inheritance) So there may be some good ideas 
> to steal there.

The key idea is to treat each parent's class attributes 
individually (via rename/undefine/redefine/select) instead of as 
in other multiple inheritance languages, e.g. C++'s all-or-none 
approach, i.e. either all the parents' attributes are shared or 
separated, and even when separated, there is no proper renaming 
mechanism to handle it.

I still think the idea of combine Eiffel's multiple inheritance 
with CLOS like multi-methods is interesting: this basically is to 
use D as a target language, and completely build a new OO system 
on top of it.



More information about the Digitalmars-d mailing list