←back to thread

289 points kristoff_it | 1 comments | | HN request time: 0.208s | source
Show context
jayd16 ◴[] No.44610245[source]
I kind of think the author simply pulled the concept of yielding execution out of the definition of concurrency and into this new "asynchrony" term. Then they argued that the term is needed because without it the entire concept of concurrency is broken.

Indeed so, but I would argue that concurrency makes little sense without the ability to yield and is therefore intrinsic to it. Its a very important concept but breaking it out into a new term adds confusion, instead of reducing it.

replies(3): >>44610401 #>>44610418 #>>44610507 #
kristoff_it ◴[] No.44610418[source]
>I kind of think the author simply pulled the concept of yielding execution out of the definition of concurrency and into this new "asynchrony" term.

Quote from the article where the exact opposite is stated:

> (and task switching is – by the definition I gave above – a concept specific to concurrency)

replies(1): >>44610729 #
1. jayd16 ◴[] No.44610729[source]
Well I'm having a hell of a time understanding what this article is trying to say. On a 3rd and 4th pass I think perhaps they mean task (in)dependency tracking is a fundamental concept. Independent tasks have "asynchrony." (Can we just say dependency and independency?)

But even with that definition, it seems like the idea of promises, task tracking, etc is well tread territory.

Then they conclude with how fire and forget tasks solve coloring but isn't that just the sync-over-async anti-pattern? I wouldn't be excited that my UI work stops to run something when there are no more green threads but they seem excited by it.

Anyway, I guess I got too distracted by the high concept "this is a fundamental change in thinking" fluff of the article.