Abstract
We develop a programming model built on the idea that the basic computational elements are autonomous machines interconnected by shared cells through which they communicate.
Each machine continuously examines the cells it is interested in, and adds information to some based on deductions it can make from information from the others.
This model makes it easy to smoothly combine expression-oriented and constraint-based programming; it also easily accommodates implicit incremental distributed search in ordinary programs.
Papers
- The Art of the Propagator - Alexey Radul & Gerald Jay Sussman
- Propagation Networks: A Flexible and Expressive Substrate for Computation by Alexey Andreyevich Radul
Presentations
- Gerald Jay Sussman The Art of the Propagator
- George Wilson - An Intuition for Propagators - Compose Melbourne 2019
- Propagators Part 1 • Edward Kmett • YOW! 2016
- Propagators Part 2 • Edward Kmett • YOW! 2016
- Thomas Kristensen - Propagators in Clojure
Projects
- Propaganda: A propagator library for Clojure
- Propagators: A propagator library for Haskell
- Holograph: Visual propagators on top of tldraw