Курс языка программирования Raku / Продвинутый уровень / Порядок выполнения / Фазеры / Exercises / Финальное сообщение
Решение: Финальное сообщение
Вот возможное решение задачи.
Код
my $count = 0;
END say "processed $count items";
$count++ for 1..3;🦋 Найдите программу в файле final-message.raku.
Вывод
processed 3 itemsКомментарии
Фейзер
ENDзаписан перед циклом, но выполняется последним — после завершения основного кода. К этому моменту$countуже был увеличен три раза.Поскольку фейзер замыкается на
$count, он читает финальное значение переменной, а не0, которое она содержала в момент появления фейзера в исходном коде. Именно поэтому итоговую информацию обычно помещают вEND.