5 ms·
If you think promise-based code with a lot of "then" is annoying, perhaps ES7 async/await will make you happier.
by lacker 10y ago
If you think promise-based code with a lot of "then" is annoying, perhaps ES7 async/await will make you happier.
- nurettin 10y agoThis is exactly what I was about to write. Also, the amount of "callbacks, that's how it's supposed to be" and "hardware is like that" and "programming is hard, deal with it" kind of replies for a readily solved problem are staggering.
- lootsauce 10y agoI don't know about others but the imposition of try catch for error handling in async/await seems to cut against the syntax gains over promises.
- nurettin 10y agoIf by promises you mean the `some.fun(had).catch(had, function(){handle stuff here})` syntax compared to async/await, that is actually a very fair point and it does make two syntaxes similarly verbose. However, it is still easier to follow a ladder of conditional statements using async/await compared to escher-style stairs of callbacks inside callbacks.
- edwinjm 10y agoInteresting. In which language is this "readily solved"?
- Capt-RogerOver 10y agoIt's a solution for a made-up problem. Sure, async/await makes it easier. But not as good as the normal sync code would be. And for what reason? The concurrency problems are already a solved issue in many many frameworks. Sure, if you do fully manual threads in something like C++ and code up everything yourself - you're in for the trouble down the road unless you are a good professional. But there are heaps of concurrency frameworks in all major languages that make this very easy. And what about performance, how does JavaScript justify putting virtually every single return value of every function into some Promise object? Talk about wasted resources.
- edwinjm 10y agoJavaScript uses one thread so not switching threads with all its contexts saves a lot of overhead.
- Capt-RogerOver 10y agoJavaScript being single-threaded is one of it's biggest drawbacks. This is universally agreed on by both it's proponents and critics. Yes sure, some very few resources are wasted on each thread, but in case of JavaScript, it wastes a lot more by not using all the cores, of which there are usually several present in almost any modern computer that will run JS.
- Salgat 10y agoAwait lets you preserve the sequential syntax that normal programmers are used to. It's syntactic sugar, which is fine if you prefer to code in a way that most people are familiar with, versus callbacks that can be messier (callback hell).