A CRDT type is defined in a stateless manner. All return values are supposed to be immutable, and there's a lot of cloning happening just to make sure we don't mutate past state.
Instead of that, I think we could have better performance (and less error-prone) if we used immutable types internally.
A CRDT type is defined in a stateless manner. All return values are supposed to be immutable, and there's a lot of cloning happening just to make sure we don't mutate past state. Instead of that, I think we could have better performance (and less error-prone) if we used immutable types internally.