4 ms·
Another language, whose design is imho superior to both C++ and D is Eiffel. In his book Object-Oriented Software Construction, Bertrand Meyer explains how the
by epsylon 14y ago
Another language, whose design is imho superior to both C++ and D is Eiffel. In his book Object-Oriented Software Construction, Bertrand Meyer explains how the language is developed to fit the OO paradigm. (I recognize though, that some of his arguments in favor of is own language are really ridiculously biased)
As far as I know, Eiffel's support for a truely usable and flexible multiple inheritance is unique among all programming languages, due to a clever renaming mechanism.
Sadly the language didn't gain much traction over the years (for reasons due to library support and lack of environments).
With the whole revival of functional (and hybrid) languages, I think that good old structured OOP as Bertrand Meyer envisioned will remain the realm of C++ for performance critical applications and C#, Java (and others) for more entreprisey stuff.
- oddthink 14y agoWhen I'm thinking OO, I'm a big enough fan of the Liskov Substitution Principle that I still like Sather over Eiffel. The whole covariant argument thing seems like a solution in search of a problem. Well, a problem other than textbooky attempts to force a real-world ontology (Animal eats Food, Carnivore eats Meat) on the class hierarchy.
- epsylon 14y agoYep, as far as I understand that's one of the criticisms addressed to Eiffel. Covariance and contravariance in a type hierarchy both have their usefulness in a type hierarchy, though. I didn't know about Sather, I'll have a look at it. Thanks for that !