Iterator内でもQueueを普通に使いたい

Iterator内でQueueを使うと各Iterator IndexでQueueが同期してしまう。どうしたものか。

Iteratorプログラミング言語でいうforと同じようなイメージで考える必要があるので、スコープ的に仕方ないのだけれども、ついついスレッド的に考えてしまう。

JavaScript Patchで書くとこんな感じのを実現したい。

gist8957714

思考がちゃんとQuarz Composerらしくなっていないんだろうなー。欲しいものは欲しい。