Generators are similar to iterators in that they provide us with sequential access to a collection of values. Iterators provide read and write access to elements that are actually stored in some collection. The sequence of values provided by a generator need not actually be stored in any collection, and thus a generator does not provide an lvalue.