Structure and Interpretation of Computer
Programs
Second Edition
3 MODULARITY, OBJECTS, AND STATE
- 3.1 Assignment and Local State
- 3.1.1 Local State Variables
- 3.1.2 The Benefits of Introducing Assignment
- 3.1.3 The Costs of Introducing Assignment?
- 3.2 The Environment Model of Evaluation
- 3.2.1 The Rules for Evaluation
- 3.2.2 Applying Simple Procedures
- 3.2.3 Frames as the Repository of Local State
- 3.2.4 Internal Definitions
- 3.3 Modeling with Mutable Data
- 3.3.1 Mutable List Structure
- 3.3.2 Representing Queues
- 3.3.3 Representing Tables
- 3.3.4 A Simulator for Digital Circuits
- 3.3.5 Propagation of Constraints
- 3.4 Concurrency: Time Is of the Essence
- 3.4.1 The Nature of Time in Concurrent Systems
- 3.4.2 Mechanisms for Controlling Concurrency
- 3.5 Streams
- 3.5.1 Streams Are Delayed Lists
- 3.5.2 Infinite Streams
- 3.5.3 Exploiting the Stream Paradigm
- 3.5.4 Streams and Delayed Evaluation
- 3.5.5 Modularity of Functional Programs and Modularity of Objects