 exactly once per output iterator (though not all elements   
may be returned, depending on the function). This implies that   
impure iterators should not be used with functions which return   
multiple iterators if all iterators are to be evaluated.</p>
  
   <p>Many of the functions here are unsafe to use with infinite   
iterators and will either fail to return on the initial call or on   
the first attempt to evaluate an element of the iterator. Read the   
documentation carefully when working with suc