# New Ticket Created by "Carl Mäsak" # Please include the string: [perl #78278] # in the subject line of all future correspondence about this issue. # <URL: http://rt.perl.org/rt3/Ticket/Display.html?id=78278 >
<tylercurtis> Actually, maybe { /O/ } should be -> $_? { /O/ } <masak> it is. <masak> rakudo: my $b = { /O/ }; say $b.signature.count; say $b.signature.arity <p6eval> rakudo 377615: OUTPUT«10» <jnthn> I'ts more like -> $_ = $OUTER::_ I guess <masak> fair enuf. <tylercurtis> Well, yes, that. <masak> OUTER, and not CALLER? <masak> rakudo: my $b; { $_ = 5; $b = { .say } }; $_ = 42; $b() <p6eval> rakudo 377615: OUTPUT«42» <masak> seems to me $_ defaults to $CALLER::_ * masak submits rakudobug <tylercurtis> How does that distinguish between $OUTER::_ and $CALLER::_? The calling scope is the same as the outer scope, no? <masak> no, the outer scope has $_ = 5, but the calling scope has $_ = 42 <jnthn> rakudo: my $b; { my $_ = 5; $b = { .say } }; $_ = 42; $b() <p6eval> rakudo 377615: OUTPUT«5» jnthn says that the problem is that there's a binding to the outer container rather than an assignment, and that the last evaluation shows this.