Wed Feb 26 17:08:32 EST 2020
Opaque vs. concrete state: can it just be cache?
It is because Erlang's state machines have no magic. Their state is a
single data structure. Putting it like that makes it easier to look
at state in a different way: opaque vs. concrete state. Concrete
state does not need to be "live". Spinning up a process with a
particular concrete state can be done lazily, i.e. it is a cache.
If combine that with a universal naming scheme, and perform
just-in-time binding, then ALL state becomes concrete.
To me, this is such an important concept: I grew up with mostly opaque
state: a process' state is a bunch of early bound data structures.