+612 9045 4394
 
CHECKOUT
Concepts, Techniques, and Models of Computer Programming : The MIT Press - Peter Van Roy

Concepts, Techniques, and Models of Computer Programming

The MIT Press

Hardcover

Published: 5th March 2004
For Ages: 18+ years old
Ships: 7 to 10 business days
7 to 10 business days
RRP $191.00
$184.80
or 4 easy payments of $46.20 with Learn more

This innovative text presents computer programming as a unified discipline in a way that is both practical and scientifically sound. The book focuses on techniques of lasting value and explains them precisely in terms of a simple abstract machine. The book presents all major programming paradigms in a uniform framework that shows their deep relationships and how and where to use them together.After an introduction to programming concepts, the book presents both well-known and lesser-known computation models ("programming paradigms"). Each model has its own set of techniques and each is included on the basis of its usefulness in practice. The general models include declarative programming, declarative concurrency, message-passing concurrency, explicit state, object-oriented programming, shared-state concurrency, and relational programming. Specialized models include graphical user interface programming, distributed programming, and constraint programming. Each model is based on its kernel language -- a simple core language that consists of a small number of programmer- significant elements. The kernel languages are introduced progressively, adding concepts one by one, thus showing the deep relationships between different models. The kernel languages are defined precisely in terms of a simple abstract machine. Because a wide variety of languages and programming paradigms can be modeled by a small set of closely related kernel languages, this approach allows programmer and student to grasp the underlying unity of programming. The book has many program fragments and exercises, all of which can be run on the Mozart Programming System, an Open Source software package that features an interactive incremental development environment.

"This book follows in the fine tradition of Abelson/Sussman and Kamin's book on interpreters, but goes well beyond them, covering functional and Smalltalk-like languages as well as more advanced concepts in concurrent programming, distributed programming, and some of the finer points of C++ and Java."--Peter Norvig, Google Inc. "In almost 20 years since Abelson and Sussman revolutionized the teaching of computer science with their Structure and Interpretation of Computer Programs, this is the first book I've seen that focuses on big ideas and multiple paradigms, as SICP does, but chooses a very different core model (declarative programming). I wouldn't have made all the choices Van Roy and Haridi have made, but I learned a lot from reading this book, and I hope it gets a wide audience." -- Brian Harvey , Lecturer, Computer Science Division, University of California, Berkeley "This is a fascinating book. It's been almost 20 years since Abelson and Sussman revolutionized the teaching of computer science with their _Structure and Interpretation of Computer Programs_. In all that time, there have been several books (some of them quite good) following SICP's ideas pretty closely, and of course many books following the old pedagogy in which the details of aprogramming language are the focus, with few deep ideas. But this is the first book I've seen that focuses on big ideas and multiple paradigms, as _SICP_ does, but chooses a very different core model (declarative programming) -- the first real intellectual competition to Abelson and Sussman. I wouldn't have made all the choices Van Roy and Haridi have made, but I learned a lot from reading this book, and I hope it gets a wide audience."--Brian Harvey, Lecturer, Computer Science Division, University of California, BerkeleyPlease note: This is the full endorsement text, to be used if possible in publicity and promotional materials. For the book cover, and in places where a shorter version is needed, please use the following: "In almost 20 years since Abelson and Sussman revolutionized the teaching of computer science with their _Structure and Interpretation of Computer Programs_, this is the first book I've seen that focuses on big ideas and multiple paradigms, as _SICP_ does, but chooses a very different core model (declarative programming). I wouldn't have made all the choices Van Roy and Haridi have made, but I learned a lot from reading this book, and I hope it gets a wide audience."

Prefacep. xiii
Running the Example Programsp. xxix
Introduction to Programming Conceptsp. 1
General Computation Models
Declarative Computation Modelp. 29
Declarative Programming Techniquesp. 111
Declarative Concurrencyp. 233
Message-Passing Concurrencyp. 345
Explicit Statep. 405
Object-Oriented Programmingp. 489
Shared-State Concurrencyp. 569
Relational Programmingp. 621
Specialized Computation Models
Graphical User Interface Programmingp. 679
Distributed Programmingp. 707
Constraint Programmingp. 749
Semantics
Language Semanticsp. 779
Appendices
Mozart System Development Environmentp. 815
Basic Data Typesp. 819
Language Syntaxp. 833
General Computation Modelp. 843
Referencesp. 853
Indexp. 863
Table of Contents provided by Publisher. All Rights Reserved.

ISBN: 9780262220699
ISBN-10: 0262220695
Series: The MIT Press
Audience: Tertiary; University or College
For Ages: 18+ years old
Format: Hardcover
Language: English
Number Of Pages: 936
Published: 5th March 2004
Publisher: MIT Press Ltd
Country of Publication: US
Dimensions (cm): 25.4 x 20.3  x 2.1
Weight (kg): 2.0