This is due to the fact that lexical variables are introduced at a statement level, not an expression level (which should be the case for perl6). Recently discussed at Problems with scoping.
HTH
_________ broquaint
Comment on Re: my $variable with &&do{} doesn't compile