On Sunday, 21 October 2018 at 22:03:00 UTC, ag0aep6g wrote:
With Manu's `shared`, there is implicit conversion from non-`shared` to `shared`. It would essentially become a language rule. For that rule to be sound, any access to `shared` data must be @system. And more challengingly, @system/@trusted code must be written carefully with the new rule in mind.

Well, we have __gshared for that. When code is written carefully, it works fine, C, C# and Java do well that way, you just architecturally minimize amount of multithreaded code, and it becomes manageable, for an example see https://github.com/dlang/druntime/blob/master/src/core/sync/semaphore.d

Reply via email to