`\Device\Afd`, or, the Deal with the Devil that makes async Rust work on Windows (2023) (notgull.net)
from Kissaki@programming.dev to programming@programming.dev on 02 Aug 12:01
https://programming.dev/post/34980117

However, there are some important features that WinSock just doesn’t expose. […]

Rust’s current async ecosystem is built atop a particularly cursed concept. It’s an unstable, undocumented Windows feature. It’s the lynchpin of not only the Rust ecosystem, but the JavaScript one as well. It’s controversial. It’s efficient. […] Without it, it’s unlikely that the async ecosystem would exist in its current form. It’s called \Device\Afd, and I’m tired of no one talking about it.

#programming

threaded - newest

kata1yst@sh.itjust.works on 02 Aug 15:13 next collapse

Windows is a marketing platform masquerading as an Operating System.

douglasg14b@programming.dev on 03 Aug 06:43 next collapse

Cool 👍

Kissaki@programming.dev on 03 Aug 07:36 collapse

I don’t think these are mutually exclusive concepts.

PlexSheep@infosec.pub on 03 Aug 08:38 next collapse

I was so confused for a moment. AfD is the neo-fascist party of Germany.

soc@programming.dev on 04 Aug 00:42 collapse

And all of this due to the mistaken design decision to stick with the obsolete readiness-based model instead of going with the superior completion-based model.

(You can build a readiness-based API on top of a completion-based API, but not the other way around.)