Request Inspection Copy

If you are an Academic or Teacher and wish to consider this book as a prescribed textbook for your course, you may be eligible for a complimentary inspection copy. Please complete this form, including information about your position, campus and course, before adding to cart.

* Required Fields

To complete your Inspection Copy Request you will need to click the Checkout button in the right margin and complete the checkout formalities. You can include Inspection Copies and purchased items in the same shopping cart, see our Inspection Copy terms for further information.

Any Questions? Please email our text Support Team on text@footprint.com.au

Submit

Email this to a friend

* ALL required Fields

Order Inspection Copy

An inspection copy has been added to your shopping cart

Structure and Interpretation of Computer Programs 2ed

by Harold Abelson and Gerald Jay Sussman with Julie Sussman The MIT Press
Pub Date:
08/1996
ISBN:
9780262510875
Format:
Pbk 688 pages
Price:
AU$113.00 NZ$117.39
Product Status: In Stock Now
add to your cart
Instructors
& Academics:
Structure and Interpretation of Computer Programs has had a dramatic impact on computer science curricula over the past decade. This long-awaited revision contains changes throughout the text.

There are new implementations of most of the major programming systems in the book, including the interpreters and compilers, and the authors have incorporated many small changes that reflect their experience teaching the course at MIT since the first edition was published.

A new theme has been introduced that emphasizes the central role played by different approaches to dealing with time in computational models: objects with state, concurrent programming, functional programming and lazy evaluation, and nondeterministic programming. There are new example sections on higher-order procedures in graphics and on applications of stream processing in numerical programming, and many new exercises.

In addition, all the programs have been reworked to run in any Scheme implementation that adheres to the IEEE standard.

This book sold over 42,000 copies world wide in the 1st edition with its revolutionary new approach to computer programming. This cheaper paperback edition is only available outside the USA. Structure and Interpretation of Computer Programs has had a dramatic impact on computer science curricula over the past decade. This long-awaited revision contains changes throughout the text.

There are new implementations of most of the major programming systems in the book, including the interpreters and compilers, and the authors have incorporated many small changes that reflect their experience teaching the course at MIT since the first edition was published.

Contents vii

Foreword xi

Preface to the Second Edition xv

Preface to the First Edition xvii

Acknowledgments xxi

1 Building Abstractions with Procedures 1

1.1 The Elements of Programming 4

1.2 Procedures and the Processes They Generate 31

1.3 Formulating Abstractions with Higher-Order Procedures 56

2 Building Abstractions with Data 79

2.1 Introduction to Data Abstraction 83

2.2 Hierarchical Data and the Closure Property 97

2.3 Symbolic Data 142

2.4 Multiple Representations for Abstract Data 169

2.5 Systems with Generic Operations 187

3 Modularity, Objects and State 217

3.1 Assignment and Local State 218

3.2 The Environmental Model of Evaluation 236

3.3 Modeling with Mutable Data 251

3.4 Concurrency: Time Is of the Essence 297

3.5 Streams 316

4 Metalinguistic Abstraction 359

4.1 The Metaciricular Evaluator 362

4.2 Variations on a Scheme--Lazy Evaluation 398

4.3 Variations on a Scheme--Nondeterministic Computing 412

4.4 Logic Programming 438

5 Computing with Register Machines 491

5.1 Designing Register Machines 492

5.2 A Register-Machine Simulator 513

5.3 Storage Allocation and Garbage Collection 533

5.4 The Explicit Control Evaluator 547

5.5 Compilation 566

References 611

List of Exercises 619

Index

Hal Abelson is Class of 1922 Professor of Computer Science and Engineering at Massachusetts Institute of Technology and a fellow of the IEEE. He is a founding director of Creative Commons, Public Knowledge, and the Free Software Foundation. Additionally, he serves as co-chair for the MIT Council on Educational Technology.

Gerald Jay Sussman is the Matsushita Professor of Electrical Engineering in the Department of Electrical Engineering and Computer Science, Massachusetts Institute of Technology. He is also the coauthor of Structure and Interpretation of Computer Programs (MIT Press, second edition, 1996).