Are there any languages that support foreach over multiple lists at once?  Something like this: foreach (string a in names, string b in places, string c in colors) {      // do stuff with a, b, c }Sure, this can be done with a regular for loop: for (int n = 0; n<max, n++) {      a = names[n]; b = places[n]; c = colors[n]; }but this loses the abstraction of foreach.My meager google-fu only reveals people asking how to do multi-foreach in various languages that don't support it.  I'm guessing that some language uses it, I just can't figure out which one.
foreach over multiple lists at once
syntax
Sure, Python can do that:for a, b, c in zip(names, places, colors):    passzip builds a list of tuples from the iterables passed to it. Python's for loop supports unpacking, that is to say the tuples are split into their components. It's a weak form of pattern matching.