Pattern Calculus [electronic resource] : Computing with Functions and Structures /
Jay, Barry.author.
Over time, basic research tends to lead to specialization - increasingly narrow topics are addressed by increasingly focussed communities, publishing in increasingly conned workshops and conferences, discussing increasingly incremental contributions. 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 development. It attempts to provide a unifying approach, bridging the gaps between different programming styles and paradigms according to a new slogan - computation 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, incorporated in, typically functional, programming languages, like Standard ML - but it has never been pursued as the basis of a unifying framework for programming.
Description based upon print version of record.
Includes bibliographical references (p. [205]-209) and index.
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.
Over time, basic research tends to lead to specialization - increasingly narrow topics are addressed by increasingly focussed communities, publishing in increasingly conned workshops and conferences, discussing increasingly incremental contributions. 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 development. It attempts to provide a unifying approach, bridging the gaps between different programming styles and paradigms according to a new slogan - computation 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, incorporated in, typically functional, programming languages, like Standard ML - but it has never been pursued as the basis of a unifying framework for programming.
Software engineering.
Mathematical logic.
Computer logic.
Computer programming.
Programming languages (Electronic computers).
Software Engineering/Programming and Operating Systems.
Mathematical Logic and Formal Languages.
Logics and Meanings of Programs.
Programming Techniques.
Programming Languages, Compilers, Interpreters.