Immutability: Putting The Dream Machine To Work
summary
Argues that persistent immutable structures let UIs treat history and state as cheap values, using a bitmapped vector trie that updates by replacing at most a path so a 32-branching tree needs about seven array writes for enormous collections. Shows microbenchmarks on V8 and JavaScriptCore building millions of versions (usable perf with transients), a working 64×64 pixel editor with instant undo/redo, and a heap snapshot that records 1.7 MB vs 210 MB for 1,000 snapshots compared to copy-on-write.
AI-written summary · about
chapters (35)
- 0:00Intro
- 1:02Davids background
- 2:37JCR Licklider
- 2:55Man Computer Symbiosis
- 4:31John McCarthy Ed Fredkin
- 5:21Alan Kay
- 5:57Longshadow
- 6:25MVC
- 7:18Data Structures
- 7:30Persistent Data Structures
- 8:52Linked List
- 9:09Cons
- 9:52Structural Sharing
- 10:13Research
- 10:58Bitmap Vector Tree
- 11:44Arrays
- 12:32Integers
- 13:01Proof
- 13:51Replace
- 14:30Size Length
- 15:02Persistent Vector
- 15:57VA
- 16:48Performance
- 17:52Transients
- 18:51JavaScript
- 19:01SpiderMonkey
- 19:57Ohm
- 20:07React
- 21:29What is React
- 23:58Demo
- 25:53Heap Snapshot
- 27:29Elm
- 28:53Maury
- 29:30Facebook
- 31:53Strategy
related talks
12mThey're functional! They're efficient!!
33mThe Functional Final Frontier
28mPersistent data structures - good for UI
37mVisualizing Persistent Data Structures
30mVisualizing process evolution
35mRewriting Your Model, Undo and Threading One Step at a Time
01h 06mPostmodern immutable data structures
38mImmutability is everything!
