Pattern Calculus: Computing with Functions and Structures

This document was uploaded by one of our users. The uploader already confirmed that they had the permission to publish it. If you are author/publisher or own the copyright of this documents, please report to us by using this DMCA report form.

Simply click on the Download Book button.

Yes, Book downloads on Ebookily are 100% Free.

Sometimes the book is free on Amazon As well, so go ahead and hit "Search on Amazon"

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.

Author(s): Barry Jay (auth.)
Edition: 1
Publisher: Springer-Verlag Berlin Heidelberg
Year: 2009

Language: English
Pages: 213
Tags: Mathematical Logic and Formal Languages; Logics and Meanings of Programs; Programming Techniques; Programming Languages, Compilers, Interpreters

Front Matter....Pages i-xv
Front Matter....Pages 1-1
Introduction....Pages 3-12
Functions....Pages 13-22
Data Structures....Pages 23-31
Static Patterns....Pages 33-44
Dynamic Patterns....Pages 45-58
Objects....Pages 59-64
Front Matter....Pages 65-65
Parametric Polymorphism....Pages 67-79
Functor Polymorphism....Pages 81-90
Path Polymorphism....Pages 91-103
Pattern Polymorphism....Pages 105-111
Inclusion Polymorphism....Pages 113-128
Implicit Typing....Pages 129-141
Front Matter....Pages 143-143
Higher-Order Functions....Pages 145-147
Algebraic Data Types....Pages 149-160
Queries....Pages 161-168
Dynamic Linear Patterns....Pages 169-171
State....Pages 173-178
Object-Oriented Classes....Pages 179-197
Back Matter....Pages 1-14