51
sentableasacompositionofoperationslikemoveandcopyortransposeandcopy.
2
In-
formally,permutationaloperationsaffectonlytheaddressspaceofacomposite.
Content-dependentoperationsareoneswhosefunctiondependsontheactualvalues
storedinacomposite.Likepurelypermutationaloperations,theymaydependonstruc-
turalpropertiesofacomposite,buttheyaredifferentinkind,becauseoftheireffect
dependsontheactualitemsstoredinthesequence.Examplesareoperationslikesort
paragraphs,transformcharacter-encoding,orsubstitutestring.Theymayonlyaffecta
smallregionofasequence,buttheyfundamentallydependontheexactdatastoredin
thatsequence.Thescopeoftheseoperationsmayalsovaryfromalocalscope,asinthe
sortingasetorparagraphs,toaglobalscopeencompassingtheentirecomposite.This
kindofglobaloperationmightrecordaglobalchangeorasortingconstraintthatshould
beappliedtoasharedobjectinapersistentway.Editinginterfacesthatsupportsuch
operationshavebecomewidelyavailableingraphicaleditorslikePhotoshop,whichcan
saveeditsandintermediatestatesofapictureandreapplythematalatertime.Photo-
shopretainsastaticrecordofallchangesappliedbytheartistandthenallowsthemto
bereapplieddynamicallyonrequest.

2
Forasequence,moveandtransposeareformallyidenticaloperations.Theireffectsarethesame,
butmovedistinguishesoneofthetwotransposedsectionsasthe“onebeingmoved”.Thishasimpli-
cationsformerge,asitprovidesadditionalinformationabouttheuser’sintentinmakinganedit.
Composedtranspositionsarecapableofgeneratingallthepermutationsofasequence.Wehavenot
discussedthepossibilityofmovementbetweensequences,butthisisanexampleofausefuland
straightforwardextensionofthesemanticsofmove,andonethatisnotevensensibleforatranspose
operation.Thiskindofsupportisespeciallyimportantwhencomposedsequencesareusedtorepre-
senthierarchicaldocumentstructures.
52
2.7 Summary
Ihavepresentedaroughtaxonomyofthetypesofchangesthatachange-oriented
concurrencycontrolsystemmightmanipulate.Itintroducesanew,andimportantdistinc-
tionbetweenstaticanddynamicoperations,andanewnotionofchange-completeness.Dy-
namicoperationsreallygainagreatdealoftheirimportancefromthenotionofchange-
completeness.
3
Palimpsestprovidesausefulsetofdynamicpermutationaloperations(spe-
cificallymoveandcopyinadditiontoinsertanddelete).Theseoperationsoperateinthe
contextofasimplecompositestructure(thesequence)underoperationswhosepotential
interactionsarediscussedinChapter3.

3
Curiously,mypathwentinthereversedirection:inexploringtheconsequencesoftryingto
reallyhandledynamicoperationsIdiscoveredtheattractivefeaturespossibleonlyinachange-
completeeditingsystem.Atthatpoint,Irealizedthattheconceptofdynamisminoperationsisareal
unacknowledgedfactorinoperation-basedsystems.Onefactorthatwillonlybecomefullyclearin
Chapter3ishowtocontroltherepresentationofchangessothatthedynamicnatureofoperational
effectsdoesn’trequirecomplexdynamicupdatesofthe representationofachange,suchasisusedin
anoperationaltransformationsystem.
Previous Page Next Page