Когда вы читаете о Perl 6, я вижу, что функция транслируется, где вам больше не нужно делать:
return "0 but true";
... но может вместо этого сделать:
return 0 but True;
Если это так, как работает истина в Perl 6? В Perl 5 это было довольно просто: 0, "", а undef - false, все остальное верно.
Каковы правила в Perl 6, когда речь идет о булевом контексте?