Write Modern Asynchronous JavaScript Using Promises, Generators, and Coroutines | Hacker News Reader