Implementing deterministic declarative concurrency using sieves

Sam Lindley
<span title="">2007</span> <i title="ACM Press"> <a target="_blank" rel="noopener" href="https://fatcat.wiki/container/2qaxtqe2rfgjnfefqcokcnzelq" style="color: black;">Proceedings of the 2007 workshop on Declarative aspects of multicore architectures - DAMP &#39;07</a> </i> &nbsp;
The predominant thread-based approach to concurrent programming is bug-prone, difficult to reason about, and does not scale well to large numbers of processors. Sieves provide a simple way of adding deterministic declarative concurrency to imperative programming languages. Sieve programs have a straightforward semantics, are not significantly more difficult to reason about than sequential imperative programs, and should scale to large numbers of processors as well as different processor
more &raquo; ... tures. • x := e performs a delayed assignment of the value of the expression e to the delayed variable x.
<span class="external-identifiers"> <a target="_blank" rel="external noopener noreferrer" href="https://doi.org/10.1145/1248648.1248657">doi:10.1145/1248648.1248657</a> <a target="_blank" rel="external noopener" href="https://dblp.org/rec/conf/popl/Lindley07.html">dblp:conf/popl/Lindley07</a> <a target="_blank" rel="external noopener" href="https://fatcat.wiki/release/ykw34gpttzaxbprkmar6xbjyvm">fatcat:ykw34gpttzaxbprkmar6xbjyvm</a> </span>
<a target="_blank" rel="noopener" href="https://web.archive.org/web/20170812162908/http://homepages.inf.ed.ac.uk/slindley/papers/dampsieve.pdf" title="fulltext PDF download" data-goatcounter-click="serp-fulltext" data-goatcounter-title="serp-fulltext"> <button class="ui simple right pointing dropdown compact black labeled icon button serp-button"> <i class="icon ia-icon"></i> Web Archive [PDF] <div class="menu fulltext-thumbnail"> <img src="https://blobs.fatcat.wiki/thumbnail/pdf/a0/1f/a01fa9087aa0e880046739563d6697218576446b.180px.jpg" alt="fulltext thumbnail" loading="lazy"> </div> </button> </a> <a target="_blank" rel="external noopener noreferrer" href="https://doi.org/10.1145/1248648.1248657"> <button class="ui left aligned compact blue labeled icon button serp-button"> <i class="external alternate icon"></i> acm.org </button> </a>