Please log in to watch this conference skillscast.
There are a lot of algorithms that revolve around iterating a form of information propagation until it attains a deterministic fixed point. CRDTs, Datalog, SAT solving, functional reactive programming, and constraint programming all fit into this mold.
One framework for these sorts of algorithms is the notion of a “propagator” due to Sussman and Radul, but until now little rigor has applied to know how such algorithms terminate with consistent results.
Another framework is Lindsey Kuper’s work on the notion of “lattice variables” (LVars), which addresses termination, parallelism and eventual consistency well, but not iteration.
By blending these frameworks, I’ll build up a series of sufficient conditions for propagators to terminate with consistent results and proceed to show how we can use this common framework to steal insights and quirks from each individual domain to try to optimize the rest.
YOU MAY ALSO LIKE:
- Unboxing Haskell (SkillsCast recorded in May 2022)
- Bazel eXchange: Watch Party (in London on 21st June 2022)
- Bazel eXchange (Online Conference on 21st - 22nd June 2022)
- LDN Talks May 2022 - Quickwit Takeover (in London on 30th May 2022)
- Rust in 2024 (SkillsCast recorded in May 2022)
- Rust's Unique Ownership Concept: Practical Examples and Why It's Important (SkillsCast recorded in May 2022)