@ianthetechieIan Wagner that’s right! - the idea is that types and logical ordering remain unaffected, but internally the compiler is allowed to freely reorder structures as long as it preserves those invariants. This is very similar to how atomic orderings work!

The only reason we wouldn’t just always apply this is because type systems can’t/don't track all side effects. Which means that just like with memory orderings, the programmer has to explicitly communicate which futures must be sequential.

0

If you have a fediverse account, you can quote this note from your own instance. Search https://toot.yosh.is/users/yosh/statuses/114495295052066020 on your instance and quote it. (Note that quoting is not supported in Mastodon.)