Node 8 is the planned LTS release for later this year. Notably, it brings async/await syntax to vanilla JS. This new feature complements callbacks and largely replaces how Promises are currently consumed (opting for sequential-like execution with try/catch blocks instead of Promise chains). The closest analogue would be Tasks in C#. EDIT: removing reference to node-v8 to prevent confusion.
Aync/await is the best thing since sliced bread. It has made my life so much easier.
https://github.com/utilise/emitterify/issues/1#issuecomment-...
The way it is now, I defensively await things all over the place. What's worse, it propagates. If any of your function's dependencies are async, your function will also have to be async (or be ok with continuing operation after it's returned) and it turtles all the way down.
It is nicer than having to deal with promises directly though, there is that.