FACULTEITVANDEWETENSCHAPPENVakgroepInformaticaProgrammingTechnologyLabAmbient-OrientedProgrammingPh.D.DissertationJessieDedeckerPromotors:Prof.Dr.TheoD’HondtandDr.WolfgangDeMeuter23May2006iiAbstractAsaresultofthecomputingtechnologythatbecomeseversmallerandcheaperitisnowpossibletointegrateitintoeverydaymaterialobjects.Thisadvancedintegrationoftechnologyallowstheunderlyingcomputertodisappearintothefabricoflifesothatbymanipulatingmaterialobjectswearetransparentlyin-teractingwiththeunderlyingintegratedtechnology.Theinventionofwirelesscommunicationtechnologyenablesthesedisappearingintegratedcomputerstocooperatewithoneanothersothattheycanderivecontextaboutitsenviron-ment.Theadvantageisthatuserscanbesupportedmorenaturallyandtrans-parentlytoachievetheirgoals.Thisvisionisoftenreferredtoas“AmbientIntelligence”(AmI).Theresearchpresentedinthisdissertationdealswiththeproblemofsoftwaredevelopmentfortheseinvisiblecomputersfromtheperspectiveofdistributedsystems.Developingsoftwareforsuchsystemsisdifficultbecauseofinescapablecharacteristicsexhibitedbythehardware.Forexample,asaconsequenceoftheuseofwirelesscommunicationmediaconnectionscanbreakatanypointintimeduetointerferenceintheenvironmentandthemobilityofmaterialobjects.Toaddressthesehardwarephenomenaatthesoftwarelevelweproposeanewpro-grammingparadigmcalled“Ambient-OrientedProgramming”(AmOP).Thisprogrammingparadigmisderivedfromthemostimportanthardwarephenom-ena.ThenextstepinthisdissertationistogaininsightinthestructureofAmOPapplications.Althoughthedefinitionofaparadigmisafirststeptowardsthisgoal,itisinsufficienttoderivethestructureofAmOPapplications.TogaininsightinthestructureofAmOPapplicationsitwasnecessarytoexperimentwithnewlanguagefeatures.Thedefinitionandexperimentationwithnewlan-guagefeaturesisnecessaryforthreereasons:1)itsupportsthedevelopertocapturetheconsequencesofthehardwarephenomenainthecode.2)withoutproperlanguagefeaturestheintegrationoftheAmOPparadigmwiththeob-jectparadigmleadstocomplexprogramstructures.3)atthispointthereisnotenoughexperienceinbuildingapplicationsthatenableAmIscenarios.TosupportexperimentswithlanguagefeatureswebuildanAmOPpro-gramminglanguage.Thefirststeptowardssuchaprogramminglanguageisthechoiceofaconcurrencyanddistributionmodel,whichwedefinedasafor-malextensionoftheactormodel.ThisformalmodelservesasabasefortheconcurrencyanddistributionmodelofanAmOPkernellanguage,calledAmbi-entTalk.AmbientTalkisalittlereflectivelyextensiblelanguagethatsupportsexperimentationwithnewlanguagefeatures.Newlanguagefeaturesarede-finedinAmbientTalkitselfoutofsemanticbuildingblocks,whichareshapedbytheAmOPparadigm.ThesesemanticbuildingblocksareusedtoextendivAmbientTalkwithexistingandnewlanguagefeatures.Theselanguagefea-turessupportthedeveloperinaddressingtheinescapableconsequencesofthehardwarephenomena.AcknowledgementsThisdissertationwouldnothavebeenwhatitistodaywithoutthetremendoussupportthatIhavereceivedfrommycolleagues,friendsandfamily.IwouldliketothankTheoD’Hondtnotonlyforinspiringmetodoresearchbutalsoforprovidingmewiththemeanstodoit.BesideshavingsparkedmyinterestsforresearchTheoalsointroducedtotheEMOOSEmasterprogram,whichhasbothenrichedmefromanintellectualandsocialperspective.ABIGthankyoualsogoestoWolfgangDeMeuterforbeingthereduringeachsteptowardsthisdissertationandforprovidingmewithallthoseusefulcomments,tipsand“peptalk”attherightmoments.Ithankthemembersofmythesiscommittee,Prof.CristinaVideiraLopes,Prof.WouterJoosen,Prof.VivianeJonckersandProf.BernardManderick,forcommentsonthefirstversionofthetext.TwootherpeopleIamgreatlyindebtedtoareTomVanCutsemandStijnMostinckx.Tomhelpedmewithsomeoftheimplementationsoftheexperi-ments,meticulouslycheckedalltechnicaldetailsandprovidedmewithusefulcommentsonhowtoimprovethereadability.Stijnproofreadsomeofthetech-nicalchaptersandgenerouslytookovermyteachingresponsibilitieswhileIwaswriting.Wolfgang,TomandStijnnotonlyhelpedmeenormouslywhileIwaswritingbutwerealsomypartnersincrimeduringthelastcoupleofyears.Ilookforwardtocontinueworkingwiththeminthefuture.IalsothankWernerVanBellewithwhomIdevelopedtheformalactorextensionsinthisdissertation.Werneralsohelpedmewithfindingafocusinthefirstyear,whichwasveryimportantinordertofinishthisdissertationwithinthetimeconstraintsofmyfunding.Thanksalsotoallthepeoplewhohelpedinimprovingthequalityandclarityofmywritingbyproofreadingandcommentingonpreliminaryversionsofthisdissertation.WolfgangDeMeuter,TomVanCutsem,PascalCostanzaandStijnMostinckxhavehelpedalotmetoimprovethequalityofthetext.PeterEbaertandElisaGonzalezBoixalsodeservespecialmentioning.Pe-tertookcareofmyresponsibilitiesconcerningtheEMOOSEprogramwhileIwaswriting.ElisastarteddevelopingaconcurrencyextensionforPicoduringhertrainingatPROG.Thisextensionwasemployedintheprototypeusedtoconducttheexperimentsinthisdissertation.IalsothanktheothermembersofourlabforprovidingmewithusefulcommentsatmyresearchmeetingsandforenduringmeatallthosemomentsIwas(unreasonably?)stressed:AndyKellens,BrechtDesmet,CoenDeRoover,DirkDeridder,DirkvanDeun,EllenVanPaesschen,IsabelMichiels,JohanBrichau,