3 ms·
Do you have any examples or links to code samples?
by cced 6y ago
Do you have any examples or links to code samples?
- tom_mellior 6y agoNot the parent and this might be different from what they meant, but this reminded me of Lindsey Kuper's PhD work on something called LVars (lattice variables): "We present LVars, a new model for deterministic-by-construction parallel programming that generalizes existing single-assignment models to allow multiple assignments that are monotonically increasing with respect to a user-specified lattice. LVars ensure determinism by allowing only monotonic writes and “threshold” reads that block until a lower bound is reached." (from https://users.soe.ucsc.edu/~lkuper/papers/lvars-fhpc13.pdf https://users.soe.ucsc.edu/~lkuper/papers/lvars-fhpc13.pdf ); "The LVars model allows communication through shared monotonic datastructures to which information can only be added, never removed, and for which the order in which information is added is not observable." (from https://users.soe.ucsc.edu/~lkuper/papers/effectzoo-pldi14.pdf https://users.soe.ucsc.edu/~lkuper/papers/effectzoo-pldi14.p... ); more at https://users.soe.ucsc.edu/~lkuper/ https://users.soe.ucsc.edu/~lkuper/
- Twisol 6y agoLVars are one of my favorite concepts, and they have roots in Vijay Saraswat's thesis on concurrent constraint programming, which is parametric over a choice of lattice. I second the recommendation for the LVars series of papers, and I also highly recommend digging up a copy of Saraswat's thesis work, which was published as a book. https://mitpress.mit.edu/books/concurrent-constraint-programming https://mitpress.mit.edu/books/concurrent-constraint-program... The semantics of determinate CCP programs (and by extension, LVars programs) can be described really beautifully in terms of closure operators on the underlying domain. I'm not sure this made it into the initial published thesis, but this is an accessible paper on the topic: http://www.lix.polytechnique.fr/comete/stages/references/ccp.pdf http://www.lix.polytechnique.fr/comete/stages/references/ccp...
- nextos 6y agoLattices are super important in static program analysis, and therefore in compiler construction. This book is quite famous in the field and all about lattices as you can infer from its cover: https://dl.acm.org/doi/book/10.5555/1965094 https://dl.acm.org/doi/book/10.5555/1965094 It's full of pseudocode and algorithms.