Defining async is hard. And I'm writing this as one of the many people who designed async in JavaScript. I don't quite agree with the definition in this post: just because it's async doesn't mean that it's correct. You can get all sorts of user-land race conditions with async code, whether it uses `async`/`await` (in languages that need/support it) or not. My latest formulation (and I think that it still needs work)…
i am not even sure we should define async it may be hard (it is) because it cannot be matched to one thing the question is: is it useful to define async? or event loop? there must be tons of concepts i have no idea in the realm of physical chips that make true parallelism possible i am totally fine with "user finger" and "quickies", job queues and blocking or non-blocking APIs the finger symbolizes touch events and e…
If you're writing that you don't need to understand how your browser works, "just" to make things fast enough... well, sure, go ahead.
But anybody who wants to graduate to a higher-level of comprehension, will need to understand a bit better under the hood.