Raku kurss / Padziļināti / Izpildes plūsma / Priekšrakstu prefiksi 🆕 / do un bloka vērtība
Viktorīna — do
Ko izdrukā šī programma?
my $s = do given -3 {
when $_ < 0 { 'neg' }
default { 'nonneg' }
};
say $s;| 1 | neg |
| 0 | nonneg |
| 0 | -3 |
| 0 | Nil |
do darbojas ne tikai kailu bloku, bet arī vadības
struktūru priekšā. Šeit do given pārvērš visu
given/when par izteiksmi. Tēma -3
atbilst $_ < 0, tāpēc izteiksme dod 'neg',
kas tiek saglabāts $s.