On Mon, Jan 05, 2009 at 05:54:50PM +0100, pugs-comm...@feather.perl6.nl wrote: > Author: moritz > Date: 2009-01-05 17:54:50 +0100 (Mon, 05 Jan 2009) > New Revision: 24769
> +=item can > + > + our Bool multi method can ($self:, Str $method) > + > +If there is a multi method of name C<$method> that can be called on > +C<$self>, then closure is return has C<$self> bound to the position > +of the invocant. > + > +Otherwise an undefined value is returned. "then closure is return has" ? perhaps: "then the closure that is returned has" ? If it returns a closure then isn't Bool the signature wrong? Before someone 'fixes' that, though, couldn't can() just return a Bool, and move the 'give me a closure' to another method? Ignoring the performance cost of needlessly creating closures for simple boolean usage, 'can' doesn't seem like a good name for a 'give me a closure' method. > +=item clone > + > + our multi method clone (::T $self --> T) > + our multi method clone (::T $self, *%attributes --> T) > + > +The first variant retuns an independent copy of C<$o> that is equivlant > +to C<$o>. typos "variant returns" and "equivalant" > +The second variant does the same, but any named arguments override an > +attribute during the cloning process. perhaps: "any named arguments are applied to $self as attributes, overriding any attributes with the same names". Makes it clearer that the attributes aren't applied to nested elements. > +=item isa > + > + our Bool multi method isa ($self:, $type) > + > +Returns true if a the invocant an instance of class C<$type>, or typos "Returns C<True> if the invocant is an instance ..." Tim.