Skip to content

Commit 3ecb5ac

Browse files
zxch3nclaude
andcommitted
docs: clarify that Loro is inspired by Eg-Walker, not a strict implementation
Added important clarifications to the Event Graph Walker concept page: - Note at the beginning explaining Loro is heavily inspired by but not strictly implementing Eg-Walker - Updated Implementation section to clarify it's a hybrid approach with Eg-Walker-inspired optimizations - Modified conclusion to emphasize the inspiration relationship This ensures readers understand that Loro incorporates Eg-Walker's key insights and achieves similar properties through inspiration rather than being a pure Eg-Walker implementation. 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <[email protected]>
1 parent 2fbece1 commit 3ecb5ac

File tree

1 file changed

+9
-4
lines changed

1 file changed

+9
-4
lines changed

pages/docs/concepts/event_graph_walker.mdx

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,8 @@ description: "Comprehensive guide to Event Graph Walker (Eg-Walker), a revolutio
77

88
Event Graph Walker (Eg-Walker) is a revolutionary CRDT algorithm that fundamentally changes how collaborative editing systems handle concurrent operations. Instead of storing complex CRDT metadata, Eg-Walker enables the use of simple indices by efficiently replaying relevant history when needed.
99

10+
> **Important Note**: Loro is not a strict implementation of Event Graph Walker. Rather, Loro is heavily inspired by Eg-Walker's design philosophy and incorporates its key insights to achieve similar properties - particularly the ability to use simple indices instead of complex CRDT metadata, and the efficient replay mechanism for handling concurrent operations.
11+
1012
## The Problem: Complex CRDT Metadata
1113

1214
Traditional CRDTs require extensive metadata to maintain consistency across distributed systems:
@@ -136,11 +138,14 @@ Eg-Walker handles this by:
136138

137139
## Implementation in Loro
138140

139-
Loro implements Fugue (a modern CRDT algorithm) on top of Eg-Walker, combining:
141+
While Loro is not a pure Eg-Walker implementation, it draws heavily from Eg-Walker's innovations to achieve similar benefits. Loro implements Fugue (a modern CRDT algorithm) with Eg-Walker-inspired optimizations:
142+
140143
- **Fugue's correctness guarantees** for text editing
141-
- **Eg-Walker's efficiency** in storage and computation
144+
- **Eg-Walker-inspired efficiency** in storage and computation
145+
- **Simple index-based operations** at the API level
146+
- **Smart replay mechanisms** for merging concurrent changes
142147

143-
This combination provides:
148+
This hybrid approach provides:
144149
```javascript
145150
// Simple API with powerful internals
146151
const doc = new Loro();
@@ -188,7 +193,7 @@ The algorithm has been proven to:
188193
4. **Performance**: Fast local operations, efficient synchronization
189194
5. **Innovation**: Fundamental rethinking of CRDT implementation
190195

191-
Eg-Walker represents a breakthrough in collaborative editing technology, making CRDTs more practical and performant for real-world applications. By cleverly leveraging the causal history already present in collaborative systems, it achieves the seemingly impossible: simpler data structures with better performance.
196+
Eg-Walker represents a breakthrough in collaborative editing technology, making CRDTs more practical and performant for real-world applications. While Loro is not a strict Eg-Walker implementation, it has been profoundly influenced by Eg-Walker's design philosophy and achieves many of the same benefits through this inspiration. By cleverly leveraging the causal history already present in collaborative systems, both Eg-Walker and Loro-inspired approaches achieve the seemingly impossible: simpler data structures with better performance.
192197

193198
[Lamport]: https://en.wikipedia.org/wiki/Lamport_timestamp
194199
[Fugue]: https://arxiv.org/abs/2305.00583

0 commit comments

Comments
 (0)