Proceedings of the 41st ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages 2014
DOI: 10.1145/2535838.2535842
|View full text |Cite
|
Sign up to set email alerts
|

Freeze after writing

Abstract: Deterministic-by-construction parallel programming models offer the advantages of parallel speedup while avoiding the nondeterministic, hard-to-reproduce bugs that plague fully concurrent code. A principled approach to deterministic-by-construction parallel programming with shared state is offered by LVars: shared memory locations whose semantics are defined in terms of an applicationspecific lattice. Writes to an LVar take the least upper bound of the old and new values with respect to the lattice, while read… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
1
1

Citation Types

0
2
0

Year Published

2014
2014
2024
2024

Publication Types

Select...
5
2

Relationship

0
7

Authors

Journals

citations
Cited by 37 publications
(2 citation statements)
references
References 34 publications
0
2
0
Order By: Relevance
“…1 The plugin can be enabled when building Scala projects using the sbt or Maven build tools. The immutability analysis is implemented using Reactive Async [4] which extends LVars [6], lattice-based variables, with cyclic dependency resolution. For each template definition we maintain a "cell" that keeps track of the immutability property of the template.…”
Section: Methodsmentioning
confidence: 99%
“…1 The plugin can be enabled when building Scala projects using the sbt or Maven build tools. The immutability analysis is implemented using Reactive Async [4] which extends LVars [6], lattice-based variables, with cyclic dependency resolution. For each template definition we maintain a "cell" that keeps track of the immutability property of the template.…”
Section: Methodsmentioning
confidence: 99%
“…I-structures, or IVars, have recently appeared in other languages, for example, in Haskell [Marlow et al 2011] or, as part of the Concurrent Collections system [Budimlić et al 2010], in C++ and Java. Recently, LVars have been proposed as a generalization of IVars [Kuper and Newton 2013;Kuper et al 2014b]. LVars allow multiple writes to a particular variable, as long as its state is monotonically increasing, with respect to a user-defined lattice.…”
Section: Deterministic Parallel Programmingmentioning
confidence: 99%