Dear OCaml users and developers,

Do you have advice on:

1. Practical file synchronization algorithms.  Rsync is the low bar for my purposes here, i.e., I don't want anything that performs worse than rsync in practice, but I am wondering if there is a way to do better.  My completely uninformed attempt at searching the literature turned up this paper: http://engineering.nyu.edu/~suel/papers/recon.pdf, but I don't know anything about the area, so I am afraid that I don't even know what I don't know about the subject :-).  I am also aware that Unison has an implementation of an rsync-like algorithm, but I don't know much more than that about that implementation.

2. Existing implementation(s) of said algorithms in OCaml.

Thank you in advance!

--
Best,
Evgeny ("Zhenya")