A Many-Worlds Interpretation of State [talk]

by Malte Sandstede, Nikolas Göbel

This is a conference talk Malte and Niko gave at BobKonf 2019.


The functional approach to state management in the frontend was first enabled by React, pioneered by the likes of om.next, Redux, and Elm, and has ushered in a golden era in web development. It is captured by the two signatures view :: DB -> HTML and mutate :: DB -> Tx -> DB. What might happen when we start working with more than one world, i.e. when we replace the notion of mutate with that of solve :: DB -> Tx -> [DB]?

Using Clojure and Rust, we explore these ideas in the context of 3DF, a stream processing system based on differential dataflows.