6 ms·
> It’s a massive antipattern. Yes! I used to be on-the-fence about this, but then had to try and decipher code like YDKJS’s `run` [0]. Four levels of nested fu
by pansa2 6y ago
> It’s a massive antipattern.
Yes! I used to be on-the-fence about this, but then had to try and decipher code like YDKJS’s `run` [0]. Four levels of nested functions!
Python’s syntax makes this sort of thing impossible, which I now consider to be a good thing.
[0] https://github.com/getify/You-Dont-Know-JS/blob/1st-ed/async%20%26%20performance/ch4.md#promise-aware-generator-runner https://github.com/getify/You-Dont-Know-JS/blob/1st-ed/async...
- linkdd 6y agoBecause you can write bad code using a pattern does not make it an anti-pattern. Thanks to ES6, the async/await keyword for Promises help you get rid of the callback hell that Javascript can easily be. Python support of asynchronous code is far behind Javascript and it is the basic requirement of frontend development.
- jnwatson 6y agoHuh? Python async has been in the lead for quite a while now. The only thing it doesn’t have is anonymous inline function syntax.
- linkdd 6y agoNode's design of Worker Thread, Promise and async/await makes an easier combo than Python + asyncio/trio which requires a lot of work to get it done. But in the end, use what works for you, and if you need performance, you still have Go, Rust, and/or C++.