forはループ構文の一つで、リストを受け取って繰り返し処理を行います。
for "foo", "bar", "baz" { say $_; }
引数リストの括弧は省略可能です。デフォルトでは特殊変数$_に引数が入ります。
引数リストの後に->を書くことで明示的にレキシカル変数を宣言することができます。
for "foo", "bar", "baz" -> $topic { say $topic; }
変数を複数宣言することも可能です。ハッシュ配列の.kvメソッドなどと組み合わせて使います。
for "foo", "bar", "baz", "hoge" -> $x, $y { say $x, " and ", $y; }
引数の個数と整合性がとれない場合はエラーになります。
for "foo", "bar", "baz" -> $x, $y { # エラー: 引数の数が奇数 say $x, " and ", $y; }
for <foo bar baz> {
say $_;
}
for @array {
say $_;
}
for 0 .. 5 {
say $_;
}