Diamond Types for high-performance CRDTs
PerformanceComments
"Orders of magnitude" is a vague marketing term. I want to see the specific workload used for the benchmark, such as random inserts versus sequential blocks, to see if this is just a best-case scenario.
check the garbage collection overhead in the alternatives.
Why are we still arguing about performance when the real issue is the API ergonomics? Does Diamond Types provide a usable way to map these types to a standard text editor buffer without a complete rewrite?
Most people aren't editing 100MB text files in real time. The real bottleneck is usually the initial sync time on a mobile device with a spotty connection, not the CPU overhead of a massive doc.
If the implementation reduces memory overhead, it might actually solve those mobile sync issues by allowing more data to stay in RAM during the merge. This could prevent the app from crashing on low-end hardware during large state synchronizations.