Курс Raku / Розширені / Порядок виконання / gather та take

Тест — gather

Що виведе наведена програма?

my @r = gather for 1..6 {
    take $_ if $_ %% 3;
};

say @r;
1[3 6]
0[1 2 3 4 5 6]
0[3]
0[]

gather збирає лише ті значення, для яких справді викликано take. Умова $_ %% 3 істинна тільки для 3 та 6, тож беруться лише ці два, даючи [3 6].

Навігація курсом

Розв’язання: Збирати до заповнення   |   Префікси інструкцій 🆕