The need for distributed collaboration on documents has taken off recently. The Internet provides a medium for exchanging copies of documents between parties. However, with this growth, ensuring document integrity has become a difficult problem. Documents may exist on various machines which are geographically separated. It is often not practical to rely on locking mechanisms for this type of document. Instead, we'd like to optimistically allow multiple copies of a documents to exist, and then reconcile or synchronize any changes.
Harmony is a project at the University of Pennsylvania led by Dr. Benjamin Pierce. It gives users the power to reconcile structured documents which have been edited in non-conflicting ways (certain changes are un-reconcilable). At the current time, Harmony exists as a command line tool, and is not capable of doing remote synchronization.
The goal of our project is to build systems for practical deployment of Harmony which makes it easy to use in a distributed setting.