
Tips for using async functions (ES2017) - sagadotworld
http://www.2ality.com/2016/10/async-function-tips.html?m=1
======
yladiz
Until recently, I was primarily a JS and Node developer, recently switching
primarily to Python. Python has a similar feature in 3.5 (async/await) and
while I used to think it was a little confusing and it forced me to think
about the event loop (because when you call an asynchronous function, it
doesn't execute until it's called as a future in a loop or in another async
function), it seems very well designed compared to this.

In Python, I can't accidentally call an async function without thinking of how
it relates to other code, whereas in JS it is a Promise that executes
synchronously and returns asynchronously, which means it opens you up to more
tricky issues down the road.

The more I've worked with Python, the more I appreciate and respect how well
designed it is. I don't have the same appreciation for JS (and yes, I know
about how it was originally designed in 10 days, but that was 20 years ago)
(and yes, I also was able to skip a lot of the Python 2 vs 3 issue having
started recently, but I recognize it was a huge issue in the recent past).

