That also means C# style foreach now works:
public static void main(){ local List<int> foo = new List<int>; foo.Add(1); foo.Add(2); foo.Add(3); foreach( int x in foo ){ print x; // 123 }}
A functional style foreach will have to wait until method generics work a little better. Next on the list is making yield work. Maybe tonight, probably not.
Of course, what's happening under the hood is not really apparent from this point of view, but that's only a good thing IMO.