Pattern Calculus - Barry Jay

Pattern Calculus

Computing with Functions and Structures

(Autor)

Buch | Softcover
XVII, 213 Seiten
2014 | 2009
Springer Berlin (Verlag)
978-3-642-42601-8 (ISBN)
181,89 inkl. MwSt
Pattern calculus is a new foundation for computation. This book introduces static and dynamic pattern calculus, supports a family of type systems for pattern calculi that build on novel typings of lamda-calculus, and details a new programming language, bondi.

Over time, basic research tends to lead to specialization - increasingly narrow t- ics are addressed by increasingly focussed communities, publishing in increasingly con ned workshops and conferences, discussing increasingly incremental contri- tions. Already the community of programming languages is split into various s- communities addressing different aspects and paradigms (functional, imperative, relational, and object-oriented). Only a few people manage to maintain a broader view, and even fewer step back in order to gain an understanding about the basic principles, their interrelation, and their impact in a larger context. The pattern calculus is the result of a profound re-examination of a 50-year - velopment. It attempts to provide a unifying approach, bridging the gaps between different programming styles and paradigms according to a new slogan - compu- tion is pattern matching. It is the contribution of this book to systematically and elegantly present and evaluate the power of pattern matching as the guiding paradigm of programming. Patterns are dynamically generated, discovered, passed, applied, and automatically adapted, based on pattern matching and rewriting technology, which allows one to elegantly relate things as disparate as functions and data structures. Of course, pattern matching is not new. It underlies term rewriting - it is, for example, inc- porated in, typically functional, programming languages, like Standard ML - but it has never been pursued as the basis of a unifying framework for programming.

Terms.- Functions.- Data Structures.- Static Patterns.- Dynamic Patterns.- Objects.- Types.- Parametric Polymorphism.- Functor Polymorphism.- Path Polymorphism.- Pattern Polymorphism.- Inclusion Polymorphism.- Implicit Typing.- Programming in bondi.- Higher-Order Functions.- Algebraic Data Types.- Queries.- Dynamic Linear Patterns.- State.- Object-Oriented Classes.

From the reviews:

"In this book the author will make you have second thoughts about the possibility and desirability of compiling away pattern matching ... It is amazing that the dynamic pattern calculus is syntactically almost as simple as the pure lambda-calculus, yet it is much more expressive." (Eugenio Moggi, University of Genoa)

"More than anyone else, he has systematically explored both the theory and practice of pattern matching. More importantly, the knowledge thus gained has been largely transcribed into this book. Carefully written, it concisely explains the concepts surrounding the integration of pattern matching into both the operational semantics and the type system of two programming paradigms--functional and object-oriented. ... The audience for this book is researchers in programming language design; for them, I highly recommend this book." (Jacques Carette, ACM Computing Reviews, January, 2010)

"This work brings a new perspective for a theory that would unify the driving forces behind the main sub-groups of programming languages ... . The book addresses final year undergraduates, graduates from a research-oriented master and a broader range of specialists, experts in fields related to the foundation of computation. ... the perspective exposed here can be of great use for specialists working in the design of programming languages or in the design of tools and Web services ... ." (Mirel Cosulschi, Zentralblatt MATH, Vol. 1215, 2011)

Erscheint lt. Verlag 6.11.2014
Zusatzinfo XVII, 213 p.
Verlagsort Berlin
Sprache englisch
Maße 155 x 235 mm
Gewicht 361 g
Themenwelt Mathematik / Informatik Informatik Programmiersprachen / -werkzeuge
Mathematik / Informatik Informatik Software Entwicklung
Informatik Theorie / Studium Compilerbau
Mathematik / Informatik Mathematik Logik / Mengenlehre
Schlagworte bondi • data structure • data structures • Functional Programming • Imperative Programming • Lambda Calculus • LISP • OCaml • Pattern calculus • Pattern Matching • Polymorphism • programming • Programming language • Programming style • Type Theory
ISBN-10 3-642-42601-8 / 3642426018
ISBN-13 978-3-642-42601-8 / 9783642426018
Zustand Neuware
Haben Sie eine Frage zum Produkt?
Mehr entdecken
aus dem Bereich
Grundlagen und Anwendungen

von Hanspeter Mössenböck

Buch | Softcover (2024)
dpunkt (Verlag)
29,90
a beginner's guide to learning llvm compiler tools and core …

von Kai Nacke

Buch | Softcover (2024)
Packt Publishing Limited (Verlag)
49,85