OK, what is the proper use of ::?CLASS ?  Say in a role you want to take an 
argument of the same class as the final class, or explicitly declare $self.  
S12 gives an example:

 method doit (::?CLASS $self: $a, $b, $c) { ... }

but this CONTRADICTS the idea that using the :: sigil in a declaration declares 
a generic type.  And you can't spell ?CLASS without the sigil because you never 
have a twigil without a sigil and ?CLASS is not a legal identifier.

The example of

    my @candidates := $object.WALK(:name<foo>, :breadth, :omit($?CLASS));

doesn't shed any light.  The meaning of $?CLASS is never explained.  Just a 
cryptic line in S02 "what class am I in (as variable)".  Is the same Type 
object accessible as the value of the item with the $ sigil?  Why is this 
necessary?  I wonder if it has something to do with problems using the :: sigil 
that I'm musing with.

--John

Reply via email to