Inicialização variável de distorção do tempo?

No loop for simples a seguir, criamos uma matriz (@a) incrementando uma variável sem tipo ($ n): my @a = do for 1..3 { state $n; $n.^name, $n++; } say @a; O resultado é "tipo de" esperado: [(Any 0) (Int 1) (Int 2)] E digo "mais ou menos" porque esperava como o primeiro valor de $ n o valor...