Explore advanced concepts in Conflict-Free Replicated Data Types (CRDTs) through a 37-minute conference talk presented at ACM SIGPLAN. Delve into the complexities of implementing undo, redo, and move operations in collaborative software environments. Examine the challenges of non-linear operation history in multi-user settings and discover a novel approach that distinguishes between undo/redo and revert operations. Learn about a new algorithm for undo and redo functionality in multi-valued registers, designed to address the intricacies of concurrent editing. Investigate the implementation of move operations in JSON CRDTs using Automerge, a CRDT library, and understand how to avoid common pitfalls such as duplicates and cycles when reordering elements in maps and lists. Gain insights into the performance implications and practical applications of these extended CRDT functionalities in real-world collaborative software development.
Overview
Syllabus
[PLF23] Extending Automerge: Undo, Redo, and Move
Taught by
ACM SIGPLAN