I would say the term “iterator” is already taken since a long time: Scala’s
Iterator does the same as the Iterator in Java and C++.
The suffix “-tor” means something that does something, so arguably, it
should be something mutable.
But what you want exists too, as Iterable.head and Iterable.tail.