title: Is Clojure Avout functionally equivalent to the operational transformation features in Google Wave?
body: <p>In this <a href="https://groups.google.com/forum/?fromgroups#!msg/clojure/rJlNqJ2JRME/QQTnZuMhp08J" rel="nofollow noreferrer">Google Groups message</a> - the author compares the Clojure library named Avout to the Operational Transform features in Google Wave. </p>
  
  <p>Is it fair to say that these are functionally equivalent? </p>
  
  <p>I understand that the operational tranform functionality was then used in Google Spreadsheets to enable the multi-user functionality we see there today. </p>
  
  <p>Could you use Clojure Avout as part of an online spreadsheet implementation to synchronise state between users and resolve conflicts (in sequence)? (ie if the first user adds a character to a cell shortly in time before the other user deletes the entire contents of the cell - would it amically be able to resolve the conflict with the later update - deleting the cell?)</p>