TL;DR 標準 iter パッケージの iter.Pull でイテレータをpull型に変換すれば、イテレータから少しずつ値を取り出すことができる これは既に終端のあるデータ列の利用(パーサ等)で有用だが、一方で終端のない未完のデータ列(リアルタイムの入力信号等)に対しては不便 そこで、少しずつ値を送りつけることのできる Push 関数を実装してみた pull型イテレータでは Merge, Zip 等の複数のイテレータを統合する処理が書けるが、push型イテレータでは逆に複数のイテレータへ分配するような処理が可能になる push型イテレータがあって初めてイテレータでやりたいことが完全に網羅できるのでは?ぜひ試してみてほしい 前置き この記事ではGoのiter.Pullについて触れます。もしiter.Pullとかコルーチンについて詳しくない方は、Goのイテレータ深堀りNightで私が発表した