These are all examples of arbitrarily nested loops in p6 For details, see http://perlmonks.org/?node_id=462987 For example: LoopOver( ([1..3], ['a'..'z'], ['foo', 'bar']) ); Where LoopOver needs to figure out dynamically for 1..3 { for 'a'..'z' { for { ... } } }