Please be more careful when changing the language behavior
Walter Bright
newshound2 at digitalmars.com
Tue Jun 2 06:43:40 UTC 2020
On 6/1/2020 11:17 PM, mw wrote:
> 2) for the multiple inheritance problem you try to solve, it actually is
> solvable: as far as I know, only Eiffel language solved the diamond inheritance
> problem gracefully, with keywords `rename`, `export`, `undefine`, `redefine` and
> `select`. Simply put: by default the Eiffel compiler will join the features and
> only keep one copy, but allow the user *explicitly* using these keywords to
> define the correct behavior that the user want. (I mailed you a copy of Eiffel
> language manual many years ago at pre-D1-age, esp. about multiple inheritance.
> Maybe you still remember? :-)
I meant it is unsolvable without breaking everything.
The trouble was, it was inserted without realizing it was multiple inheritance,
meaning its behaviors are ad-hoc and don't make a whole lot of sense when
examined carefully.
I know I have that Eiffel manual around here somewhere :-)
I also have Meyers' tome "Object Oriented Software Construction".
More information about the Digitalmars-d
mailing list