Limit this search to....

Advanced Functional Programming: Third International School, Afp'98, Braga, Portugal, September 12-19, 1998, Revised Lectures 1999 Edition
Contributor(s): Swierstra, S. Doaitse (Editor), Henriques, Pedro R. (Editor), Oliveira, Jose N. (Editor)
ISBN: 3540662413     ISBN-13: 9783540662419
Publisher: Springer
OUR PRICE:   $52.24  
Product Type: Paperback
Published: July 1999
Qty:
Additional Information
BISAC Categories:
- Computers | Programming - Object Oriented
- Computers | Software Development & Engineering - General
- Computers | Programming Languages - General
Dewey: 005.11
LCCN: 99-38268
Series: Lecture Notes in Computer Science
Physical Information: 0.65" H x 8.5" W x 11" (1.60 lbs) 298 pages
 
Descriptions, Reviews, Etc.
Publisher Description:
Inthisvolumeyouwill?ndthelecturenotescorrespondingtothepres- rd tationsgivenatthe3 summerschoolonAdvancedFunctionalProgramming, heldinBraga, PortugalfromSeptember12-19,1998. ThisschoolwasprecededbyearlieronesinB?astad(1995, Sweden, LNCS925) andOlympia, WA(1996, USA, LNCS1129). Thegoalofthisseriesofschoolsis tobringrecentdevelopmentsintheareaoffunctionalprogrammingtoalarge groupofstudents. Thenotesarepublishedinordertoenableindividuals, small studygroups, andlecturerstobecomeacquaintedwithrecentworkinthefast developingareaoffunctionalprogramming. Whatmadethisschoolparticularlyinterestingwasthefactthatalllectures introducedusefulsoftware, thatwasusedbythestudentsintheclassestoget hands-onexperiencewiththesubjectstaught. Weurgereadersofthisvolumeto downloadthelatestversionofthissoftwarefromtheInternetandtrytodothe exercisesfromthetextthemselves;theproofoftheprogramisinthetyping. The?rstlecture, onSortingMorphisms, servesasagentleintroductiontothe thingstocome. Ifyouhavealwaysbeenafraidoftheword"morphism", andyou havebeenwonderingwhatcatamorphisms, anamorphisms, hylomorphims, and paramorphimswereabout, thisisthepapertoread?rst;youwilldiscoverthat theyaremerelynamesforrecursionpatternsthatoccuroverandoveragainwhen writingfunctionalprograms. Thealgorithmsinthepaperareallaboutsorting, andsinceyouarelikelytoknowthosealgorithmsbyheartalready, seeingthem structuredandanalyzedinanovelwayshouldserveasamotivationtoreadon tothesecondlecture. Thesecondlecture, onGenericProgramming, isalmostabookinabook. ThenotescanbeseenastheculminatingpointoftheSTOP-project, sponsored bytheDutchgovernmentattheendofthe80'sandthebeginningofthe90's. Its overallgoalwasthedevelopmentofacalculationalwayofderivingprograms. The projecthasprovideddeeperinsightintorealfunctionalprogrammingandinto thetheorybehindmanythingscommonlywrittenbyfunctionalprogrammers. Oneofthemainachievementsoftheprojecthasbeentomakepeopleaware ofthefactthatmanyalgorithmscanbedescribedinadata-independentway. ThePolyPsystemintroducedinthesenotesisoneofthetranslationstothe Haskell-worldofthistheoreticalunderpinning. Thethirdlecture, onGenericProgramTransformation, canalsobeseenas anapplicationofthetheoryintroducedinlecturetwo. Manye?ciency-improving programtransformationscanbeperformedinamechanicalway, andthesewould nothavebeenpossiblewithoutinsightintothecorrectnessofsuchtransfor- tionsgainedinthelectureonGenericProgramming. Thefourthlecture, onDesigningandImplementingCombinatorLanguages, introducesaneasytowriteformalismforwritingdownthecatamorphismsint- ducedinearlierchapters. Itisshownhowquitecomplicatedcatamorphisms, that at?rstsightseemratherforbiddingbymakingextensiveuseofhigher-orderdo- VI Preface mains, canactuallybedevelopedinastep-wisefashion, usinganattributegr- marview;itisfurthermoreshownhowtorelatethiswayofprogrammingwith conceptsfromtheobject-orientedworldthusmakingclearwhatthestrengths andweaknessesofeachworldare. The?fthlecture, titledUsingMetaML: AStagedProgrammingLanguage, introducestheconceptofpartialevaluation. Itservesasanotherinstanceof thequestfor"themostgenericofwritingprogramsatthelowestcost". The stagingtechniquesshowhowcoststhatwereintroducedbyaddingextralevels ofabstraction, maybemovedfromrun-timetocompile-time. Ithasbeencommonknowledgetousersofmodernfunctionallanguagesthat thetypesystemcanbeagreathelpinshorteningprogramsandreducingerrors. Intheextremeonemightseeatypeasapredicatecapturingtheproperties ofanyexpressionwiththattype. InthesixthlectureonCayenne-Spiceup yourProgrammingwithDependentTypesitisshowninwhatdirectionfunct