bcore icon indicating copy to clipboard operation
bcore copied to clipboard

A faster and more accessible diff implementation

Open Byron opened this issue 11 years ago • 0 comments

At the very core of anything in bcore stands a simple, highly abstracted diff algorithm. The current implementation is recursive, which is straightforward to implement, but costly and sometimes impractical.

The reason for it being costly is the considerable amount of stack work being done. It's impractical because some delegates have to actively maintain their own stack-like information to do their work.

To my mind it would be better to have a second implementation, which operates non-recursively and which provides its manually maintained stacks to the delegate. That way, the delegate may essentially remain similar in implementation, but use the manual stack for its own purposes.

As a final goal, the new algorithm implementation should replace the current one, which should be beneficial for the overall performance of the kvstore, and thus bcore applications in general.

Byron avatar Jun 16 '14 07:06 Byron