Iterators and generators are powerful and can make code much cleaner/more declarative. Especially when used with async/await.
If anyone is interested, I recently released a real-time WebSocket library (Node.js and front end) which only uses Async Iterators to stream data (no event listener callbacks):
https://hackernoon.com/getting-started-with-asyngular-bbe3dd...
Feedback welcome.