Partial Evaluation: Practice and Theory


Book Description

As the complexity of software increases, researchers and practicioners continue to seek better techniques for engineering the construction of evolution of software. Partial evaluation is an attractive technology for modern software construction since it provides automatic tools for software specialization and is based on rigorous semantic foundations. This book is based on a school held at DIKU Copenhagen, Denmark in summer 1998 during which leading researchers summarized the state of the art in partial evaluation. The lectures presented survey the foundations of partial evaluation in a clear and rigorous manner and practically introduce several existing partial evaluators with numerous examples. The second part of the book is devoted to more sophisticated theoretical aspects, advances systems and applications, and highlights open problems and challenges. The book is ideally suited for advanced courses and for self study.




Partial Evaluation and Automatic Program Generation


Book Description

Partial evaluation reconciles generality with efficiency by providing automatic specialization and optimization of programs. This book covers the entire field of partial evaluation; provides simple and complete algorithms; and demonstrates that specialization can increase efficiency.







Foundations of Secure Computation


Book Description

The final quarter of the 20th century has seen the establishment of a global computational infrastructure. This and the advent of programming languages such as Java, supporting mobile distributed computing, has posed a significant challenge to computer sciences. The infrastructure can support commerce, medicine and government, but only if communications and computing can be secured against catastrophic failure and malicious interference.




Applied Semantics


Book Description

This book is based on material presented at the international summer school on Applied Semantics that took place in Caminha, Portugal, in September 2000. We aim to present some recent developments in programming language research, both in semantic theory and in implementation, in a series of graduate-level lectures. The school was sponsored by the ESPRIT Working Group 26142 on Applied Semantics(APPSEM),whichoperatedbetweenApril1998andMarch2002.The purpose of this working group was to bring together leading reseachers, both in semantic theory and in implementation, with the speci?c aim of improving the communication between theoreticians and practitioners. TheactivitiesofAPPSEMwerestructuredintonineinterdisciplinarythemes: A: Semantics for object-oriented programming B: Program structuring C: Integration of functional languages and proof assistants D: Veri?cation methods E: Automatic program transformation F: Games, sequentiality, and abstract machines G: Types and type inference in programming H: Semantics-based optimization I: Domain theory and real number computation These themes were identi?ed as promising for pro?table interaction between semantic theory and practice, and were chosen to contribute to the following general topics: – description of existing programming language features; – design of new programming language features; – implementation and analysis of programming languages; – transformation and generation of programs; – veri?cation of programs. The chapters in this volume give examples of recent developments covering a broad range of topics of interest to APPSEM.




Generative Programming and Component Engineering


Book Description

This book constitutes the refereed proceedings of the ACM SIGPLAN/SIGSOFT Conference on Generative Programming and Component Engineering, GPCE 2002, held in Pittsburgh, PA, USA in October 2002. The 18 revised full papers presented were carefully reviewed and selected from 39 submissions. Among the topics covered are generative programming, meta-programming, program specialization, program analysis, program transformation, domain-specific languages, software architectures, aspect-oriented programming, and component-based systems.




Functional and Logic Programming


Book Description

This book constitutes the refereed proceedings of the 5th International Symposium on Functional and Logic Programming, FLOPS 2001, held in Tokyo, Japan in March 2001. The 21 revised full papers presented together with three invited papers were carefully reviewed and selected from 40 submissions. The book offers topical sections on functional programming, logic programming, functional logic programming, types, program analysis and transformation, and Lambda calculus.




Typed Lambda Calculi and Applications


Book Description

This book constitutes the refereed proceedings of the 5th International Conference on Typed Lambda Calculi and Applications, TLCA 2001, held in Krakow, Poland in May 2001. The 28 revised full papers presented were carefully reviewed and selected from 55 submissions. The volume reports research results on all current aspects of typed lambda calculi. Among the topics addressed are type systems, subtypes, coalgebraic methods, pi-calculus, recursive games, various types of lambda calculi, reductions, substitutions, normalization, linear logic, cut-elimination, prelogical relations, and mu calculus.




Compiler Construction


Book Description

This book constitutes the refereed proceedings of the 12th International Conference on Compiler Construction, CC 2003, held in Warsaw, Poland, in April 2003. The 20 revised full regular papers and one tool demonstration paper presented together with two invited papers were carefully reviewed and selected from 83 submissions. The papers are organized in topical sections on register allocation, language constructs and their implementation, type analysis, Java, pot pourri, and optimization.




Fundamental Approaches to Software Engineering


Book Description

ETAPS 2005 was the eighth instance of the European Joint Conferences on Theory and Practice of Software. ETAPS is an annual federated conference that was established in 1998 by combining a number of existing and new conf- ences. This year it comprised ?ve conferences (CC, ESOP, FASE, FOSSACS, TACAS), 17 satellite workshops (AVIS, BYTECODE, CEES, CLASE, CMSB, COCV, FAC, FESCA, FINCO, GCW-DSE, GLPL, LDTA, QAPL, SC, SLAP, TGC, UITP), seven invited lectures (not including those that were speci?c to the satellite events), and several tutorials. We received over 550 submissions to the ?ve conferences this year, giving acceptance rates below 30% for each one. Congratulations to all the authors who made it to the ?nal program! I hope that most of the other authors still found a way of participating in this exciting event and I hope you will continue submitting. The events that comprise ETAPS address various aspects of the system - velopment process, including speci?cation, design, implementation, analysis and improvement. The languages, methodologies and tools which support these - tivities are all well within its scope. Di?erent blends of theory and practice are represented, with an inclination towards theory with a practical motivation on the one hand and soundly based practice on the other. Many of the issues involved in software design apply to systems in general, including hardware s- tems,andtheemphasisonsoftwareisnotintendedtobeexclusive.