Comment by mrkeen

7 hours ago

Yes, multithreaded problems go away on a single thread.

Is there any way for an external thread to ask (via CSP) for the state, think about the state, then write back the new state (via CSP)?

If so, you're back to race conditions - with the additional constraints of a master thread and CSP.

That would be shared ownership again.

  • So then I would sell STM to you from the "other end".

    Everyone else has multiple threads, and should replace their locks with STM for ease and safety.

    You've got safe single-thread and CSP, you should try STM to gain multithreading and get/set.