Concepts, Techniques, and Models of Computer Programming

by Peter Van Roy

On This Page

Description

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 show more 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. show less

Tags

Recommendations

Member Reviews

2 reviews
This is the first book to cover most of the major computer programming models and it uses one of the best programming environments (Mozart/Oz) for its examples. I'm having a blast reading the book and doing the exercises. Soon I'll need to come up with some really challenging projects to exploit the power of Mozart/Oz. The only flaw in my mind is the bias against lexical typing. If you're seriously interested in computer programming, this one is a must read.
On par with "Structure and Interpretations of Computer Programs" and "The Art of Computer Programming"!

Members

Recently Added By

Author Information

Picture of author.
3 Works 270 Members

Classifications

Genres
Technology, Nonfiction, General Nonfiction
DDC/MDS
005.1Computer science, information & general worksComputer science, knowledge & systemsArtificial Intelligence/Virtual RealitySoftware development
LCC
QA76.6 .V36ScienceMathematicsMathematicsInstruments and machinesCalculating machinesElectronic computers. Computer science
BISAC

Statistics

Members
266
Popularity
121,157
Reviews
2
Rating
(4.11)
Languages
English
Media
Paper, Ebook
ISBNs
4
ASINs
1