Nothing personal, but people not aware of where these concepts came from in distributed computing history is annoying, and I don't like repeating myself:
> Regardless of where promises come from, the fact is that they are locally resolved, not remotely resolved.
Idempotent operations are implicit promises at the protocol level. We're talking about distributed systems here where abstractions and semantics cross machine boundaries, so your local-only focus is not valid. I suggest reading up on the E language via the link I provided.
> Using promises in JavaScript is a hack around the fact that the platform has some pretty large deficiencies.
A single threaded event loop is not necessarily a deficiency.
Using promises in JavaScript is a hack around the fact that the platform has some pretty large deficiencies.