Persistent vs. Ephemeral Structures¶
Persistent data structures preserve previous versions after modification, enabling temporal queries and safe sharing; ephemeral structures modify in place, optimizing for single-version use cases.
Tension Addressed¶
Memory Usage vs. Time Performance
Recognizable As¶
Immutable data structures; copy-on-write; structural sharing; version control internals; functional programming collections; any "undo-friendly" design
Canonical Sources¶
Driscoll et al., "Making Data Structures Persistent" (1989); Okasaki, Purely Functional Data Structures (1998)
Transfers To¶
Version Control (Git internals), Functional Programming (immutable collections), Database Systems (MVCC), Undo Systems (history maintenance)
Persistence enables safe concurrent access (no mutation races) and temporal queries (what was the value at time T?) at the cost of additional space for preserved structure.