Chapter One
You can navigate through the full text of Chapter 1, or move to selected sections by clicking on the appropriate title below.
Building Abstractions with Procedures
The Elements of Programming
Expressions
Naming and the Environment
Evaluating Combinations
Compound Procedures
The Substitution Model for Procedure Application
Conditional Expressions and Predicates
Example: Square Roots by Newton's Method
Procedures as Black-Box Abstractions
Procedures and the Processes They Generate
Linear Recursion and Iteration
Tree Recursion
Orders of Growth
Exponentiation
Greatest Common Divisors
Example: Testing for Primality
Formulating Abstractions with Higher-Order Procedures
Procedures as Arguments
Constructing Procedures Using Lambda
Procedures as General Methods
Procedures as Returned Values