by 0xKelsey on 10/16/25, 3:00 PM with 31 comments
by Arcuru on 10/23/25, 5:04 PM
Still working on good blog posts to explain and introduce it though.
by cbm-vic-20 on 10/23/25, 2:39 PM
The article then goes into some examples of CRDTs and their merge operation, and the examples are pretty straightforward: take the maximum of two values, or take one with a more recent timestamp, etc.
But what about the motivating example? What should a merge function do with the inputs "change the third word from 'affect' to 'effect'" and "delete the third word"? In other words, how does the function know which of these operations "wins"? It could ask a user for a manual resolution, but is there a reasonable way for a function to make this determination itself? Maybe deletes are more powerful than word changes, so the delete wins.
by deepanwadhwa on 10/23/25, 4:27 PM
by fellowniusmonk on 10/23/25, 3:01 PM
As an aside, I find FugueMax to be amazing to solve interleaving issues.
I've found for collaborative editing fuguemax for resolving intraline edits and h-lseq for the lines themselves has been amazing.
by iwontberude on 10/23/25, 5:14 PM