Private methods in classes and roles

2008-05-16 Thread Moritz Lenz
S12 says (in the context of classes): my method think (Brain $self: $thought) (Such methods are completely invisible to ordinary method calls, and are in fact called with a different syntax that uses ! in place of the . character. See below.) And later on, in the context of roles: my

Re: Private methods in classes and roles

2008-05-16 Thread Moritz Lenz
and a few more thoughts: I wrote: S12 says (in the context of classes): my method think (Brain $self: $thought) (Such methods are completely invisible to ordinary method calls, and are in fact called with a different syntax that uses ! in place of the . character. See below.) for

RE: All classes imply the existence of a role of the same name.

2008-05-16 Thread Kealey, Martin, ihug-NZ
-Original Message- From: chromatic [mailto:[EMAIL PROTECTED] We are trying to avoid the java.lang.String is Final problem here in various ways. One of them is not allowing library designers to mark things as final. Overloading final was Java's rather inept attempt to define

RE: All classes imply the existence of a role of the same name.

2008-05-16 Thread Kealey, Martin, ihug-NZ
I wrote: Overloading final was Java's rather inept attempt to define objects with value semantics rather than container semantics John M. Dlugosz [EMAIL PROTECTED] wrote: Can you tell me more about that, or point to something? Alas I can't point to anything, it's just a personal

Re: assignable mutators (S06/Lvalue subroutines)

2008-05-16 Thread John M. Dlugosz
Brandon Allbery allbery-at-kf8nh.com |Perl 6| wrote: S06/Lvalue subroutines: Lvalue subroutines return a proxy object that can be assigned to. (...) S13/Methods: Setter methods that expect the new value as an argument do not fall into the well-behaved category, however. When I take these

Re: All classes imply the existence of a role of the same name.

2008-05-16 Thread John M. Dlugosz
Kealey, Martin, ihug-NZ Martin.Kealey-at-vodafone.com |Perl 6| wrote: In Java, final is used to denote both a *class* that can't change (extend), and *value* that can't change (a constant member of the class). Got it: on a value it means readonly. --John

Re: Private methods in classes and roles

2008-05-16 Thread John M. Dlugosz
Moritz Lenz moritz-at-casella.verplant.org |Perl 6| wrote: S12 says (in the context of classes): my method think (Brain $self: $thought) (Such methods are completely invisible to ordinary method calls, and are in fact called with a different syntax that uses ! in place of the . character.