my @blocks := (0..*).map: -> $n { -> $x, $y { $x * $y * $n } }; #### sub gen($x, $y) { state $n = 0; $x*$y*$n++ } my @foo := &gen xx *; #### my @foo := sub ($x, $y) { state $n = 0; $x*$y*$n++ } xx *; #### my @foo = { state $n=-1; $n++; sub ($x,$y) { $x+$y+$n } } ... *; #### for 0..2 -> $i { for 0..2 { say @foo[$i](3,5); } say; } #### 8 8 8 9 9 9 10 10 10