[E-Lang] Re: inheritance, delegation, mental models for beginners
Marc Stiegler
marcs@skyhunter.com
Sun, 4 Mar 2001 18:54:56 -0700
> The point I was making in my earlier post is that we should separate the
> rhetorical and marketing issues from the syntactic and semantic ones. I
believe
> it is true that a large number of C++ programmers will have issues with
the
> language if it doesn't have inheritence, but vanishingly few of them are
smart
> enough to even tell you what inheritence *is*. What I'm saying is you
should
> implement whatever inheritence/delegation mechanism seems best given the
> consensus of the community here, and then label this mechanism
"inheritance"
> without attempting in the marketing of E to explain the nuances of what
makes
> whatever E does in this respect different from what C++, Java or other
> languages do. You want to conserve your extremely limited budget for
> unusual-language-concepts-that-need-to-be-explained to use on really big
and
> radical concepts like capabilities and promises.
Yes, I want to conserve my word budget on this stuff, with great ferocity! I
believe the new Peace Treaty achieves this goal, though in a different way
than you propose. Delegation is easy, simple, and short to explain, it is
very intuitive. Java-like inheritance is easy to explain because it is,
well, Java-like. From a book perspective, it would cost more to leap through
the hoop of explaining why "delegation" is really a form of "inheritance",
with just a couple of little different behaviors that would be a little
surprising to a Java programmer that have to be explained with great
clarity.
--marcs