Raku-Kurs / Fortgeschritten / Kontrollfluss / Phasers / Exercises / Begin zuerst
Lösung: Begin zuerst
Hier ist eine mögliche Lösung der Aufgabe.
Code
my $compiled = BEGIN { 2 + 3 };
say $compiled;🦋 Du findest den Quellcode in der Datei begin-first.raku.
Ausgabe
5Kommentare
BEGIN { 2 + 3 }wird während der Kompilierung ausgeführt und ergibt5. Als Ausdruck verwendet, gibt einBEGIN-Block seinen Wert zurück, der$compiledzugewiesen wird.Die Berechnung findet nur einmal statt, zur Kompilierzeit; zur Laufzeit enthält
$compiledeinfach die Konstante5. So wirdBEGINverwendet, um Werte vorab zu berechnen, und nicht nur, um früh etwas auszugeben.