[Unison-hackers] Harmony preview... hackers needed

Benjamin Pierce bcpierce at cis.upenn.edu
Mon Aug 1 14:21:13 EDT 2005


Dear Unison hackers,

Harmony is a follow-on project to Unison whose goal is to offer a  
framework for building Unison-like synchronizers for a wide variety  
of tree-structured data stored as XML.  It includes two major  
components: (1) a generic tree synchronization algorithm whose  
behavior is driven by the schema of the trees being synchronized, and  
(2) a domain-specific programming language for describing *bi- 
directional* transformations on trees, in which the same program can  
be interpreted both as a transformation from concrete trees in some  
specific application format to abstract trees suitable for  
synchronization and as a transformation mapping updated abstract  
trees (post synchronization) to updated versions of the original  
concrete trees.

Harmony has been mentioned many times over the years in this forum,  
and some of you have expressed interest in looking at it when the  
time came... and it has!  After an intense few months of hacking, we  
have reached the point where we will soon -- hopefully in a month or  
so -- start to offer Harmony to the community (under GPL, same as  
Unison).  At around the same time, we will release a new version of  
Unison that understands how to cooperate with Harmony-based XML  
synchronizers as external merge tools.

Right now, we could use a few courageous souls to play with Harmony,  
give us reactions to the current set of demos and documentation, and  
experiment with adapting Harmony to their own purposes -- i.e.,  
building new instances for synchronizing other kinds of XML data.  (I  
really do mean courageous!  To get past the pre-packaged demos,  
you'll need to be comfortable compiling and reading [and writing  
small amounts of] OCaml, fiddling with Makefiles, programming in  
strange new and minimally documented languages, etc.)

If anybody is interested in helping us in this way, please drop me a  
note and I will send you a pointer to a tarball.

Thanks,

     Benjamin




More information about the Unison-hackers mailing list