Chapter 4 · Metalinguistic Abstraction
23 runnable lessons across 4 sections of the original book.
StartSection 4.1 · The Metacircular Evaluator
10 lessons
- 4.1.1Eval classifies expressions; apply completes applications.Open lesson
- 4.1.2A special form chooses what gets evaluated.Open lesson
- 4.1.3A program can inspect a program as data.Open lesson
- 4.1.4Rewrite new syntax into a rule the evaluator already knows.Open lesson
- 4.1.5Frames, procedures, booleans, and argument lists are evaluator data.Open lesson
- 4.1.6An environment gives a symbol its value.Open lesson
- 4.1.7The evaluator can read a finite program and preserve its environment.Open lesson
- 4.1.8A program can be constructed, transformed, inspected, and then evaluated.Open lesson
- 4.1.9An evaluator can make local initialization explicit.Open lesson
- 4.1.10Analyze once, then run the plan many times.Open lesson
Section 4.2 · Variations on Scheme and Lazy Evaluation
4 lessons
Section 4.3 · Variations on Scheme and Nondeterministic Computing
3 lessons
Section 4.4 · Logic Programming
6 lessons
- 4.4.1A rule turns one query into a sequence of smaller goals.Open lesson
- 4.4.2A query transforms a stream of frames into another stream of frames.Open lesson
- 4.4.3A frame records only consistent pattern bindings.Open lesson
- 4.4.4Closed-world negation requires a complete fact boundary.Open lesson
- 4.4.5A recursive rule needs a visible search boundary.Open lesson
- 4.4.6Unification joins assertions and renamed rules under one frame protocol.Open lesson
Chapter checkpoint
Reconnect the chapter’s key ideas before moving on.
Review