Iterator
An object that produces values one at a time — the basis for loops over collections.
for x in list works because list is "iterable". Generators (Python yield, JS function*) create iterators that compute values on-demand — great for large or infinite sequences.