In fact I suspect that, true to the Perl optimization rule of not involving the dispatcher if at all possible, using
for in Perl 6 to implictly alias to the topic and letting the lazy behaviour implicitly determine EOFness for you will be more efficient than using
while while explicitly assigning to a variable and explicitly testing for definedness. </handwaving>
Makeshifts last the longest.