I've been playing around with an implementation of concurrent versions of AsyncIterator.prototype.{map,filter,flatMap}. Ended up making a visualizer where you can drive the Promises yourself, which I think helps understand how it behaves. Let me know your thoughts.
bakkot.github.io/async-iterat...
bakkot.github.io
Concurrent AsyncIterator .filter