Earlier quoted context omitted.
Seeing the world as mutable is a matter of perspective, if you explicitly model time as a dimension it can instead be seen as a sequence of transitions from immutable state to immutable state, an accumulation of events over time, which fits the log abstraction perfectly.
> if you explicitly model time as a dimension it can instead be seen as a sequence of transitions from immutable state to immutable state, an accumulation of events over time, which fits the log abstraction perfectly I worked with a feature that used this approach once. It even made sense for the feature (an immutable history log of patient chart data). It was absolute hell to work with. Querying current state, which…
You work with many features that use this approach.
https://www.dbi-services.com/blog/oracle-log-writer-and-write-ahead-logging/
https://git-scm.com/docs/git-reflog
https://dev.mysql.com/blog-archive/mysql-8-0-new-lock-free-scalable-wal-design/
https://www.postgresql.org/docs/current/wal-intro.html
https://www.sqlite.org/wal.html
https://www.amazon.science/blog/lessons-learned-from-10-years-of-dynamodb