Propagators in Clojure
summary
Describes an implementation of the propagator model as the propaganda library for Clojure and ClojureScript, with cells that hold values, propagators that listen and write, and custom value types like intervals. Builds a browser demo of the barometer/building-height problem where fall-time gives 41–47 m, shadow method 44–48 m and combined interval merging yields 44–47 m. Provides immutable system snapshots, audit trail of updates, backtracking support, JVM/CLJS portability, and throws exceptions on contradictory writes; warns about convergence and performance tradeoffs.
AI-written summary · about
chapters (10)
- 0:00Start
- 8:20Propagators
- 11:45Values
- 13:17Barometer puzzle
- 20:31Take one
- 23:49STM if you need it
- 24:17Experiments
- 24:41Audit trails
- 26:53Differences
- 28:43Conclusion
related talks
45mResidential Programming without Mutable State
48mAncestry of Polymorphism in Clojure
31mLightning Talks
38mBuilding a Grammar for Statistical Graphics in Clojure
38mFun with Functional Programming in Clojure
14mMoldable Live Programming with Clerk
40mFun with Functional Programming in Clojure
35mApplying the paradigms of core.async in ClojureScript
