72
pairsthedegreeofchange-completenessofasystem,sinceitintroducesadatadependency
thatblockspotentiallysensiblemergeresults.Furthermore,anyapplicationneedingsucha
“move-conditionalinsertion”couldalsoachievethesameeffectbyrecordingtheinsertionat
thesourceofthemoveoperationandsimplyavoidingtheselectionofstatesthatinclude
themovebutdonotincludetheinsertioninquestion.Therefore,weshallnotrequirethat
insertiontargetsbeabletospecifypointswithinmovedestinations.
Forranges,thingsareabitmorecomplicated.Sinceacontiguoussequenceinasequence
containingmoveoperationsmaycontainanarbitrarynumberoforiginalsourceranges,there
may,intheworstcase,bem+1placeswhereanoperationmustberecorded,inasequence
containingmmoveoperations.Thisimpliesthatasingleconceptualrange,carriedbackto
thesourceofallmovesthatmighthavetheirdestinationswithinthatrange,couldfragment
intoanarbitrarynumberofranges.Doingthisimplieseitherthattherepresentationofop-
erationsmustbecomemorecomplex(torepresentdiscontiguousregionsofeffect),orthat
singleapplicationoperationsmustberepresentedassetsofsimplerones.Thislookslikea
potentiallyexpensivechoiceintermsofrepresentationalcomplexityandthestoragecostof
animplementation.InLiteraryMachines(Nelson1987),thiskindoffragmentationwascon-
sideredforlinkanchors(linkendsasNelsoncalledthem).Thisproblemisinherentinany
attempttotracetheresultsofmoveoperationsbacktotheirorigins,sinceanysubsequence
inaparticularversionmaybetheresultofmultiplemoveoperationsfromdifferentsources.
However,storingrangesinfragmentedformattheirultimateoriginsdoesnotseemlikea
goodideaforotherreasons.Inanycasewheresplittingwouldoccurtheremustbemore
thanonemoveoperationinvolved.Andinexactlythesecases,thecontextoftherangeit-
selfisdeterminedbythemoveoperationswhosedestinationtherangeisaffecting,includ-
ing,quiteimportantly,therelativeorderofthevariousfragmentsthatconstitutetherange
inquestion.Particularlyinthecaseofacopyrange,theideaofseparatelyassemblingthe
sourcefromdisconnectedpiecesisnotobviouslyusefulforanything.Evenforadeletion
73
operation(wherecontextualeffectsarelesssignificant)Thereisnotagreatbenefitin
transformingtherangebacktotheoriginalsourceofitsdata.Itisworthnotingthatanap-
plicationwillalwaysbeabletotracedatabacktoitsultimateorigin;therealquestionhere
iswhetherthatkindofbacktracingisuseful,andwhether,ifuseful,itshouldbemandatory.
Forthetargetofamoveoperationtheanswerseemstobe“no.”
However,thereisoneimportantexceptiontothis.Inthecasethatthedatainarangeis
completelycontainedinthedestinationofasinglemoveoperation,itdoesmakesensetore-
cordthatrangeatthesourceratherthanthedestinationofthemove.Thiscaseistheflip
sideofthecaseofoverlappingmovesourcesdiscussedabove,wherenestingrangesoffered
specialopportunitiesformerging.
Itisalsolikethecaseofinsertionpoints.Whenthemoveoperationisnotessentialto
thecontextoftherangetheabilitytocombinechangesisincreasedbyeliminatinganyun-
neededdependencyonthemoveoperation.Thefactthatarangeappliestoamovedin-
stanceofsomedatashouldnotexcludethatrangefromapplyingtothesamedatainthe
absenceofthemoveoperation.Forinstance,aparagraphmightbethesourceofcopyor
moveoperations,butthoseshouldbeindependentofwhethertheparagraphasawholehad
beenmovedfromsomeotherlocation.Ingeneral,freecombinationofchangesisincreased
whenrangesthatareentirelycontainedinamovedregionarerecordedatthesourcerather
thanthedestinationofthemove.Withthecopy,ofcourse,thisisnotpossible,sincethe
sourceandthedestinationmustbeabletohaveindependenteditinghistories.Bycontrast,
onlyoneofthesourceanddestinationofamoveoperationcanappearinanyversion,and
neverboth,whichmeansthataslongastherangeisnotfragmented,itdoesnotmatterif
therangeisrecordedatthesourceofthemove(excepttopreventsomekindsofchange
combination).Thedeletionofdatamakessensewhencarriedbacktotheoriginalsource.
Previous Page Next Page