On Sun, Mar 14, 2004 at 02:32:44PM +0100, Leopold Toetsch wrote:
: Why? A ParrotClass is responsible for the method dispatch. The ParrotObject
: inherits that behavior.

In Perl 6 terms we'd prefer to say that ParrotClass "does" the
Dispatch role, and so does ParrotObject, but to call it inheritance
is misleading.  If you want to implement roles internally as a mild
form of inheritance, that's okay, but it *will* confuse people, and
will have to be explained repeatedly.

Basically, Perl 6 allows dispatch on anything that supports the
Dispatch role, whether that happens to be called a class or an object
or both.  The funny thing about ordinary classes is that they dispatch
ordinary method calls to themselves rather than to their metaclass.
It takes special syntax to "go meta".  (That might or might not map
well onto Ruby's Foo vs Foo' distinction.)

At least that's the story this week...

Larry

Reply via email to