Concepts, Techniques, and Models of Computer Programming

Front Cover
MIT Press, 2004 - Computers - 900 pages
11 Reviews

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.

  

What people are saying - Write a review

User ratings

5 stars
3
4 stars
6
3 stars
0
2 stars
2
1 star
0

Review: Concepts, Techniques, and Models of Computer Programming

User Review  - Xavier Shay - Goodreads

Took a while, but I finally finished this. Plenty of good concepts in here, starting with dataflow variables (I didn't know the concepts) and building all the way up to distributed systems. Quite ... Read full review

Review: Concepts, Techniques, and Models of Computer Programming

User Review  - Arkadiusz Holko - Goodreads

I'd read and completed most of the exercises from the Structure and Interpretation of Computer Programs (SICP) a couple of months ago. Then I've stumbled on reviews saying that this book is a logical ... Read full review

Contents

II
xxix
III
1
V
2
VII
4
VIII
7
IX
9
X
10
XI
11
LXXXI
518
LXXXII
537
LXXXIII
545
LXXXIV
551
LXXXV
556
LXXXVI
567
LXXXVII
569
LXXXVIII
573

XII
13
XIII
14
XIV
15
XV
16
XVI
17
XVII
18
XVIII
20
XIX
21
XX
22
XXI
23
XXII
27
XXIII
29
XXIV
30
XXV
42
XXVI
49
XXVII
56
XXVIII
72
XXIX
79
XXX
90
XXXI
96
XXXII
107
XXXIII
111
XXXIV
114
XXXV
118
XXXVI
124
XXXVII
127
XXXVIII
166
XXXIX
177
XL
195
XLI
210
XLII
218
XLIII
230
XLIV
233
XLV
235
XLVI
246
XLVII
256
XLVIII
272
XLIX
278
L
304
LI
308
LII
313
LIII
326
LIV
337
LV
338
LVI
345
LVII
347
LVIII
350
LIX
353
LX
362
LXI
365
LXII
377
LXIII
386
LXIV
394
LXV
399
LXVI
405
LXVII
408
LXVIII
410
LXIX
413
LXX
419
LXXI
435
LXXII
440
LXXIII
450
LXXIV
463
LXXV
479
LXXVI
482
LXXVII
489
LXXVIII
491
LXXIX
492
LXXX
502
XC
582
XCI
592
XCII
600
XCIII
615
XCIV
618
XCV
621
XCVI
623
XCVII
627
XCVIII
631
XCIX
641
C
650
CI
654
CII
660
CIII
671
CIV
677
CV
679
CVI
681
CVII
682
CVIII
689
CIX
690
CX
703
CXII
707
CXIII
710
CXIV
712
CXV
714
CXVI
720
CXVII
723
CXVIII
724
CXIX
732
CXX
739
CXXI
743
CXXII
745
CXXIII
746
CXXIV
749
CXXV
750
CXXVI
755
CXXVII
758
CXXVIII
762
CXXIX
772
CXXX
774
CXXXI
777
CXXXII
779
CXXXIII
780
CXXXIV
804
CXXXV
806
CXXXVI
808
CXXXVIII
809
CXXXIX
813
CXL
815
CXLII
817
CXLIII
819
CXLV
824
CXLVI
825
CXLVII
828
CXLIX
830
CL
831
CLI
833
CLII
834
CLIV
836
CLVI
839
CLVIII
843
CLIX
844
CLX
845
CLXI
846
CLXII
849
CLXIII
850
CLXV
853
CLXVI
863
Copyright

Common terms and phrases

Popular passages

Page 862 - Van Roy, P., Haridi, S., Brand, P., Smolka, G., Mehl, M., Scheidhauer, R.: Mobile objects in Distributed Oz.

References to this book

All Book Search results »

About the author (2004)

Seif Haridi is Professor of Computer Systems in the Department of Microelectronics and Information Technology at the Royal Institute of Technology, Sweden, and Chief Scientific Advisor of the Swedish Institute of Computer Science.

Bibliographic information