On 15 November 2012 17:17, Andrei Alexandrescu <span dir="ltr"><<a href="mailto:SeeWebsiteForEmail@erdani.org" target="_blank">SeeWebsiteForEmail@erdani.org</a>></span> wrote:<br><div class="gmail_extra"><div class="gmail_quote">
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="im">On 11/15/12 1:08 AM, Manu wrote:<br>
</div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="im">
On 14 November 2012 19:54, Andrei Alexandrescu<br></div>
<<a href="mailto:SeeWebsiteForEmail@erdani.org" target="_blank">SeeWebsiteForEmail@erdani.org</a> <mailto:<a href="mailto:SeeWebsiteForEmail@erdani.org" target="_blank">SeeWebsiteForEmail@<u></u>erdani.org</a>>><div class="im">
<br>
wrote:<br>
    Yah, the whole point here is that we need something IN THE LANGUAGE<br>
    DEFINITION about atomicLoad and atomicStore. NOT IN THE IMPLEMENTATION.<br>
<br>
    THIS IS VERY IMPORTANT.<br>
<br>
<br></div><div class="im">
I won't outright disagree, but this seems VERY dangerous to me.<br>
<br>
You need to carefully study all popular architectures, and consider that<br>
if the language is made to depend on these primitives, and the<br>
architecture doesn't support it, or support that particular style of<br>
implementation (fairly likely), than D will become incompatible with a<br>
huge number of architectures on that day.<br>
</div></blockquote>
<br>
All contemporary languages that are serious about concurrency support atomic primitives one way or another. We must too. There's no two ways about it.<br></blockquote><div><br></div><div>I can't resist... D may be serious about the <i>idea</i> of concurrency, but it clearly isn't serious about concurrency yet. shared is a prime example of that.</div>
<div>We do support atomic primitives 'one way or another'; there are intrinsics on all compilers. Libraries can use them.</div><div>Again, this thread seemed to be about urgent action... D needs a LOT of work on it's concurrency model, but something of an urgent fix to make a key language feature more useful needs to leverage what's there now.</div>
</div></div>