de>I</code> is the position of <code>H</code> in
  <code>Iterator1</code>. The enumeration starts with <code>Index</code> and increases by 1  
in each step.</p>
 
  <p>That is, <code>enumerate/1</code> behaves as if it had been defined as  
follows, except that the iterator is not fully evaluated before  
elements are returned:</p>
 
  <pre>  enumerate(Index, Iterator1) -&gt;
    {Iterator2, _ } = llists:mapfoldl(fun(T, Acc) -&gt; {{Acc, T}, Acc+1} end, Index, Iterator1),
    Iterator2.
  ```
 
  Example:
 