Raku-Kurs / Fortgeschritten / Kontrollfluss / Anweisungspräfixe / Exercises / Der Wert eines do-Blocks
Lösung: Der Wert eines do-Blocks
Hier ist eine mögliche Lösung der Aufgabe.
Code
my $label = do if 7 > 5 { 'big' } else { 'small' };
say $label;🦋 Du findest den Quellcode in der Datei do-block.raku.
Ausgabe
bigKommentare
Ein einfaches
ifist eine Anweisung und hat keinen verwendbaren Wert. Dasdo-Präfix verwandelt das gesamteif/elsein einen Ausdruck.Da
7 > 5wahr ist, ergibt der Ausdruck'big', was$labelzugewiesen wird. Der gleiche Trick funktioniert mitdo givenunddo for.Die
{ }-Klammern sind nicht optional. Rakusiferwartet immer einen Block, daher kannst du die Zweige nicht zuif 7 > 5 'big' else 'small'verkürzen — das lässt sich nicht kompilieren und gibt den Fehler Missing block aus.
Kursnavigation
← Der Wert eines do-Blocks | Sofortige Auswertung erzwingen →