Electric Clojure Differential Dataflow for UI (KEYNOTE)
summary
Electric Clojure claims fullstack UI code compiles to a shared DAG that injects websocket streaming diffs so collections are a stream of change sets not whole payloads the DOM layer is ~500 lines and the canonical demo is a 12 line fullstack example that marks server vs client and runs without React or a virtual DOM the system streams robot telemetry at 20 Hz with replay at 40x and uses offloadable cancelable queries and diff squash to keep the UI responsive.
AI-written summary · about
chapters (20)
- 0:00Introduction
- 1:55Electric Clojure
- 3:58Reactivity and DOM rendering
- 6:49Concurrency and DAG
- 8:14Scalability problems
- 8:35File system traversal demo
- 11:21Process supervision
- 13:30Functional effects and purity
- 14:13Query cancellation
- 17:04Lambda transparency
- 19:07TodoMVC as a function
- 21:41Dependency injection
- 21:58Motivating differential dataflow
- 22:21Diffing collections
- 24:49Dataflow for large datasets
- 25:30Back pressure
- 26:53Virtual scroll
- 28:43Chat app reconciliation
- 29:44Optimistic updates
- 31:09Conclusion
related talks
28mElectric Clojure: Differential Dataflow for UI
40mFunctional Client-Side ClojureScript UI Programming with Webfui
39mWeb Apps in Clojure and ClojureScript with Pedestal
28mPersistent data structures - good for UI
35mClojureScript & User Interfaces: Simplicity yields Possibilities
38m"Growing Data Center networking mgmt UI using ClojureScript, Reagent and re-frame"
49mClojureScript: Fun and productive web development with next level tooling
38mThe challenges and benefits of a functional reactive frontend
