Kurso de Raku / Progresinta / Regofluo / Deklaraj prefiksoj / do kaj la valoro de bloko

Kvizo — do

Kion presas la sekva programo?

my $s = do given -3 {
    when $_ < 0 { 'neg' }
    default     { 'nonneg' }
};
say $s;
1neg
0nonneg
0-3
0Nil

do funkcias antaŭ kontrolstrukturoj, ne nur nudaj blokoj. Ĉi tie do given transformas la tutan given/when en esprimon. La temo -3 kongruas kun $_ < 0, do la esprimo donas 'neg', kiu estas konservita en $s.

Kursa navigado

do kaj la valoro de bloko   |   Maldiligento kaj fervoro