A type of Iterator that can apply a function before yielding each element
Iterator
next:A ‑> B ‑> B
hasNext:() ‑> Bool