I very much like this model, but I wonder how necessary it is when we have IcedCoffeescript [1], ES6 generators + co [2], and ES7 async&#x2F;await [3] as viable ways of managing async control flow within mostly synchronous-looking code, all as dialects of languages that have strong adoption.<p>I actually think generators + co is a really strong model. Async&#x2F;await gives you a slight bit of sugar, but I&#x27;ve realized that if you stick with generators, you can wrap your generators to allow you to `yield` more than just promises, effectively giving you something like (untyped) scoped continuations [4].<p>[1] <a href="https:&#x2F;&#x2F;maxtaco.github.io&#x2F;coffee-script&#x2F;" rel="nofollow">https:&#x2F;&#x2F;maxtaco.github.io&#x2F;coffee-script&#x2F;</a><p>[2] <a href="https:&#x2F;&#x2F;github.com&#x2F;tj&#x2F;co" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;tj&#x2F;co</a><p>[3] <a href="http:&#x2F;&#x2F;masnun.com&#x2F;2015&#x2F;11&#x2F;11&#x2F;using-es7-asyncawait-today-with-babel.html" rel="nofollow">http:&#x2F;&#x2F;masnun.com&#x2F;2015&#x2F;11&#x2F;11&#x2F;using-es7-asyncawait-today-with...</a><p>[4] <a href="http:&#x2F;&#x2F;blog.paralleluniverse.co&#x2F;2015&#x2F;08&#x2F;07&#x2F;scoped-continuations&#x2F;" rel="nofollow">http:&#x2F;&#x2F;blog.paralleluniverse.co&#x2F;2015&#x2F;08&#x2F;07&#x2F;scoped-continuati...</a>