イテレータを簡単に実装できます。オーバーヘッドや複雑さを心配する必要はありません。メモリ内で配列を組み立てなくても済むようになります。無視できないほどの時間がかかってしまうかもしれません。配列を作る代わりに、ジェネレータ関数を書くことになります。値を繰り返し返せるということです。関数をジェネレータで実装しなおしてみましょう。関数は、すべての値を含む配列を作ってそれを返します。結果的に、かなり大きな配列になる可能性があります。超えるメモリを使うことになります。オブジェクトを作ってジェネレータの内部の状態を記録しておくのに必要なものだけになります。未満で収まるでしょう。";}?>上の例の出力は以下となります。新しいオブジェクトを返します。前進しかできないイテレータオブジェクトと同じように振る舞います。値を送ったり戻したりなどしてジェネレータの状態を操作できます。