Is this according to the spec? #void main(char[] args[]) #{ # foreach(i,l;args[0]) { # printf("%c\n",l); # ++i; # } #} I'm changing the key (index) inside the foreach, and foreach actually uses my index. The example above prints every other character. L.