ebook img

Patterns, Programming and Everything PDF

178 Pages·2012·3.905 MB·English
Save to my drive
Quick download
Download
Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.

Preview Patterns, Programming and Everything

Patterns, Programming and Everything Karin K. Breitman (cid:2) R. Nigel Horspool Editors Patterns, Programming and Everything Editors KarinK.Breitman R.NigelHorspool InformaticsDepartment DepartmentofComputerScience PUC-Rio UniversityofVictoria RiodeJaneiro,RJ,Brazil Victoria,BC,Canada ISBN978-1-4471-2349-1 ISBN978-1-4471-2350-7(eBook) DOI10.1007/978-1-4471-2350-7 SpringerLondonHeidelbergNewYorkDordrecht LibraryofCongressControlNumber:2012938227 ©Springer-VerlagLondon2012 Thisworkissubjecttocopyright.AllrightsarereservedbythePublisher,whetherthewholeorpartof thematerialisconcerned,specificallytherightsoftranslation,reprinting,reuseofillustrations,recitation, broadcasting,reproductiononmicrofilmsorinanyotherphysicalway,andtransmissionorinformation storageandretrieval,electronicadaptation,computersoftware,orbysimilarordissimilarmethodology nowknownorhereafterdeveloped.Exemptedfromthislegalreservationarebriefexcerptsinconnection with reviews or scholarly analysis or material supplied specifically for the purpose of being entered and executed on a computer system, for exclusive use by the purchaser of the work. Duplication of this publication or parts thereof is permitted only under the provisions of the Copyright Law of the Publisher’slocation,initscurrentversion,andpermissionforusemustalwaysbeobtainedfromSpringer. PermissionsforusemaybeobtainedthroughRightsLinkattheCopyrightClearanceCenter.Violations areliabletoprosecutionundertherespectiveCopyrightLaw. Theuseofgeneraldescriptivenames,registerednames,trademarks,servicemarks,etc.inthispublication doesnotimply,evenintheabsenceofaspecificstatement,thatsuchnamesareexemptfromtherelevant protectivelawsandregulationsandthereforefreeforgeneraluse. Whiletheadviceandinformationinthisbookarebelievedtobetrueandaccurateatthedateofpub- lication,neithertheauthorsnortheeditorsnorthepublishercanacceptanylegalresponsibilityforany errorsoromissionsthatmaybemade.Thepublishermakesnowarranty,expressorimplied,withrespect tothematerialcontainedherein. Printedonacid-freepaper SpringerispartofSpringerScience+BusinessMedia(www.springer.com) Foreword Iwasabsolutelydelightedtobeaskedtowritetheforwardtothisbook,whichisa tributetoafriend,acolleagueandagreatcomputerscientist. I have known Judith since we did our PhDs together at the University of Southampton. We both graduated in 1977 from the Department of Mathematics. IwasstudyingPureMathematics,JudithwasoneoftheminorityintheDepartment studying the new subject of Computer Science and she has been a pioneer of the subjecteversince. She came to Southampton from South Africa to work with David Barron. In thosedaystheywerebreakingnewgroundbydevelopingnewcompilertechniques to overcome the disastrous performance issues of the computers of that era. The significance of the work was demonstrated through its take up by industry. After herPhDwasfinished,Judithquicklygraspedthesignificanceofthenewlyemerg- ing Ada programming language for distributed programming—a topic which few were ready to recognise or grapple with at the time—and became an international expertinthedevelopmentofthelanguageinnotimeatall.Herbookwritingcareer startedaroundthistimewithhermonographonDataAbstractioninProgramming Languages. She continued to develop her ideas about distributed programming and paral- lel computing throughout the 1980’s during which time we both found ourselves backatSouthamptonworkingintheDepartmentofComputerScience.Judithwas atremendoushelptomeatthetimebecauseofherwealthofexperienceinresearch andteachingcomputerscience.Iwasanewcomertothefieldandfoundherbooks onprogramming,particularlyPascalwhichwas the standardteachinglanguageof thetime,botheasytoreadandincrediblyrichinpracticalexamples.Shemanaged to bring the language alive to her readers, which is something that seems to elude mostauthorsofcomputersciencetexts. Alwaysaheadofthecrowd,shespottedtheimportanceofJavainthepost-Web era,andwrotethefirstJavatext-book.HerworkonJavaweb-frameworkswastaken upbyindustryandputherandherteamatPretoriafirmlyontheinternationalmap. She then moved onto the world of .NET and C#. Her work in this area was very v vi Foreword highlyvaluedbyMicrosoft,andshewasfrequentlyaskedtospeakatmeetingsor- ganisedbythecompany—aportentofthingstocome. Through her books, her frequent appearance at conferences and her work on international committees such as IFIP, Judith became very well known on the in- ternationalstage.Herbookshavebeentranslatedintofiveotherlanguagesandsold aroundtheworld.Sheisalwaysoneofthefirsttospotnewtrendsincomputersci- enceandtobothapplytheminherresearchandintroducethemtoherstudentsand thewiderworldthroughherbooks. Asonewouldexpectfromreadinghertextbooks,Judithisawonderfulteacher. Shereallycaresaboutherstudentsandworkstoinstilinthemtheloveforcomputer scienceshehasherself.Sheisalsoaveryexperiencedresearchsupervisorandher studentscannowbefoundinanynumberofresearchlaboratoriesaroundtheworld. Over the years, her work has been taken up and used by industry and she was a valuedindustrialconsultant.Buildingonthisandeverreadyforachallenge,Judith moved both continents and career paths to join Microsoft Research as Director of ComputerSciencein2009.Shehasthrownherselfintothisnewrolewithherusual mixofenthusiasmandprofessionalismandhasmadetheroleverymuchherown. Having talked so much about her career and the impact she has had on the in- ternational computer science community, I must also add that Judith is one of the kindestmostgenerouspeopleithasbeenmyprivilegetoworkwithandIamproud to be able to call her one of my closest friends. She gives far more than she takes fromherinteractionswitheveryoneshemeets. Thelistofauthorsofthepapersinthisbookistestamenttothefactthatsomany leadingcomputerscientistsaroundtheworldfeelthesamewayasIdo. Southampton,UK WendyHall Preface Thisvolumecontainscontributionswrittenbyauthorswhohaveallworkedinsome capacity with Judith Bishop during her distinguished career. When Judith reached a certain milestone in her age (and we will leave the reader to figure out which one), we had the idea of putting together this book in recognition of her career and her accomplishments. We contacted various researchers and industry profes- sionals who have worked with Judith and asked them if they would be willing to contribute material for this book. Their responses were overwhelmingly positive. Pleasenotethatwemadeadeliberatedecisionnottoinviteanycolleaguesfromher currentemployer,MicrosoftResearch,tocontributematerialasthismighthaveled toconflictofinterestissues.HoweverwemadeanexceptionforTonyHeywhois Judith’s superior at Microsoft Research; he graciously agreedto providean After- wordforthisvolume.SinceTonyrepresentsthelastplacewhereJudithhasworked, we thought that it would be symmetric to have a Foreword from someone at the firstplacewheresheworked.ThatsomeoneisWendyHallfromtheUniversityof Southampton.Wearegratefultohertoo. The material in this book spans a wide variety of research areas. The variety reflectsthemanyresearchinterestsofJudithandhercollaborators,andalsoreflects her transitions from one important research area to another over the course of her career.WehavealsoincludedtwocontributionswhichareanythingbutPatterns(or Programming).Weleaveittothereadertodiscoverwhichonestheseare.Wehope youwillfindthemtobeasamusingaswedid. We thank every author for contributing their time and energy into helping this book come to fruition. We also thank Springer for publishing this volume and for providingtheirhelp. Victoria,Canada R.NigelHorspool RiodeJaneiro,Brazil KarinBreitman vii Contents AssessingDependabilityforMobileandUbiquitousSystems:IsTherea RoleforSoftwareArchitectures? . . . . . . . . . . . . . . . . . . . . 1 MarcoAutili,PaolaInverardi,andMassimoTivoli ABestiaryofOverlookedDesignPatterns . . . . . . . . . . . . . . . . . . 13 JohnAycock EndUserProgramminginSmartHome . . . . . . . . . . . . . . . . . . . 19 VilmosBilicki,ZoltánRak,MiklósKasza,ÁdámVégh,RóbertBéládi, andTiborGyimóthy ReconceptualizingBottom-UpTreeRewriting . . . . . . . . . . . . . . . 31 K.JohnGough Automated Adaptation of Component Interfaces with Type Based Adaptation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45 ThomasGschwind TheBenefitsofBadTeaching . . . . . . . . . . . . . . . . . . . . . . . . . 63 DerrickG.Kourie SSA-BasedSimulatedExecution . . . . . . . . . . . . . . . . . . . . . . . 75 JonasLundberg,MathiasHedenborg,andWelfLöwe TowardsaCalculusofObjectPrograms . . . . . . . . . . . . . . . . . . . 91 BertrandMeyer FormalSpecificationasHigh-LevelProgramming:TheASSLApproach. 129 EmilVassevandMikeHinchey AtomicityinReal-TimeComputing . . . . . . . . . . . . . . . . . . . . . 147 JanVitek ix x Contents TuningKeywordPatternMatching. . . . . . . . . . . . . . . . . . . . . . 167 BruceW.Watson AnAfterwordforJudith:TheNextPhaseofHerCareer . . . . . . . . . 173 TonyHey AuthorIndex . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175 Contributors Marco Autili Dipartimento di Informatica, Università degli Studi di L’Aquila, L’Aquila,Italy John Aycock Department of Computer Science, University of Calgary, Calgary, Alberta,Canada RóbertBéládi DepartmentofSoftwareEngineering,UniversityofSzeged,Szeged, Hungary VilmosBilicki FrontEndARTSoftwareLtd,Szeged,Hungary K.JohnGough SchoolofComputerScience,QueenslandUniversityofTechnol- ogy,Brisbane,Australia ThomasGschwind ZurichResearchLaboratory,IBM,Rüschlikon,Switzerland Tibor Gyimóthy Department of Software Engineering, University of Szeged, Szeged,Hungary MathiasHedenborg SchoolofComputerScience,Mathematics,andPhysics,Lin- naeusUniversity,Växjö,Sweden Mike Hinchey Lero–the Irish Software Engineering Research Centre, University ofLimerick,Limerick,Ireland Paola Inverardi Dipartimento di Informatica, Università degli Studi di L’Aquila, L’Aquila,Italy MiklósKasza DepartmentofSoftwareEngineering,UniversityofSzeged,Szeged, Hungary Derrick G. Kourie Fastar Research Groups, Department of Computer Science, UniversityofPretoria,Pretoria,SouthAfrica WelfLöwe SchoolofComputerScience,Mathematics,andPhysics,LinnaeusUni- versity,Växjö,Sweden xi xii Contributors Jonas Lundberg School of Computer Science, Mathematics, and Physics, Lin- naeusUniversity,Växjö,Sweden BertrandMeyer ITMO&EiffelSoftware,ETHZurich,Zürich,Switzerland ZoltánRak FrontEndARTSoftwareLtd,Szeged,Hungary Massimo Tivoli Dipartimento di Informatica, Università degli Studi di L’Aquila, L’Aquila,Italy EmilVassev Lero–theIrishSoftwareEngineeringResearchCentre,Universityof Limerick,Limerick,Ireland ÁdámVégh DepartmentofSoftwareEngineering,Universityof Szeged,Szeged, Hungary JanVitek ComputerScienceFaculty,PurdueUniversity,WestLafayette,USA BruceW.Watson FASTARResearchGroup,CenterforKnowledgeDynamicsand Decision-Making,StellenboschUniversity,Stellenbosch,RepublicofSouthAfrica

See more

The list of books you might like

Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.