106
needtobetranslated,andwhatoperationshavetransformationsthatneedtobeapplied.
Palimpsest,bydealingwiththewholehistoryandusingimmutablepointers,doesnotre-
quiresuchknowledge,sinceoperationsareexpressedusing“staticpointers”thatdonot
needtobeupdatedwhenthecontextchanges.
5.2 Distributedimplementations
Persistentaddressingminimizestheamountofknowledgeanapplicationneedstohave
aboutthestateofitscollaborators.Anysetofupdatescanbeextractedandpackagedinthe
formofoperationsusingPalimpsestaddressesandthentransmittedtoanyotherinstanceof
theapplication.Thechangesinsuchanupdatepackagearesuitableforprocessingbyany
instanceoftheapplicationthatgetsaccesstothem.Infact,aninstanceofanapplication
needstoknownothingaboutacollaborator’sstatetosenditschangesinausableform.
Evenifanupdateissenttoaninstanceofanapplicationthathasneverpreviouslyseenthe
documentinquestion,itisstillpossibletoallowworktoproceedwithoutresendinganyup-
dates.AslongasIDsareassignedinawaythatallowsfordiscoveryofthelocationwherea
changewascreated,anapplicationcanrequestallorsomeofthemissinginformationre-
quiredtocreateacomplete(orsufficient)instance.Theoriginalchangeswouldneverhave
toberetransmitted.Evenifthestateanapplicationfinallyretrievedissignificantlydiver-
gentfromthesender’sstateatthetimeoftransmissionoftheoriginalchanges,theinvari-
antaddresseswillstillbemeaningfulandtheycanstillbeapplied.
Forlinkmaintenanceindistributedhypertextsystems,thispropertyisacriticalone.One
ofthehigher-costtasksforhyperbasesystems(CampbellandGoodman1987;Schnase,Leg-
gettetal.1993),isthemanagementofchangeandversioning(Hicks,Leggettetal.1998),
andtheinsuranceoflinkintegrity.Whenapplyingsuchsystemstocollaborationoverwide
areanetworks,linktrackingbecomesconsiderablymoreexpensiveandproblematic.Whenit
isdoneatall,linkconsistencyisusuallymaintainedusingsomeformofdistributeddata-
needtobetranslated,andwhatoperationshavetransformationsthatneedtobeapplied.
Palimpsest,bydealingwiththewholehistoryandusingimmutablepointers,doesnotre-
quiresuchknowledge,sinceoperationsareexpressedusing“staticpointers”thatdonot
needtobeupdatedwhenthecontextchanges.
5.2 Distributedimplementations
Persistentaddressingminimizestheamountofknowledgeanapplicationneedstohave
aboutthestateofitscollaborators.Anysetofupdatescanbeextractedandpackagedinthe
formofoperationsusingPalimpsestaddressesandthentransmittedtoanyotherinstanceof
theapplication.Thechangesinsuchanupdatepackagearesuitableforprocessingbyany
instanceoftheapplicationthatgetsaccesstothem.Infact,aninstanceofanapplication
needstoknownothingaboutacollaborator’sstatetosenditschangesinausableform.
Evenifanupdateissenttoaninstanceofanapplicationthathasneverpreviouslyseenthe
documentinquestion,itisstillpossibletoallowworktoproceedwithoutresendinganyup-
dates.AslongasIDsareassignedinawaythatallowsfordiscoveryofthelocationwherea
changewascreated,anapplicationcanrequestallorsomeofthemissinginformationre-
quiredtocreateacomplete(orsufficient)instance.Theoriginalchangeswouldneverhave
toberetransmitted.Evenifthestateanapplicationfinallyretrievedissignificantlydiver-
gentfromthesender’sstateatthetimeoftransmissionoftheoriginalchanges,theinvari-
antaddresseswillstillbemeaningfulandtheycanstillbeapplied.
Forlinkmaintenanceindistributedhypertextsystems,thispropertyisacriticalone.One
ofthehigher-costtasksforhyperbasesystems(CampbellandGoodman1987;Schnase,Leg-
gettetal.1993),isthemanagementofchangeandversioning(Hicks,Leggettetal.1998),
andtheinsuranceoflinkintegrity.Whenapplyingsuchsystemstocollaborationoverwide
areanetworks,linktrackingbecomesconsiderablymoreexpensiveandproblematic.Whenit
isdoneatall,linkconsistencyisusuallymaintainedusingsomeformofdistributeddata-