| Prologue: How to Program |
| I | Fixed-Size Data |
| Intermezzo: BSL |
| II | Arbitrarily Large Data |
| Intermezzo: Quote, Unquote |
| III | Abstraction |
| Intermezzo: Scope |
| IV | Intertwined Data |
| Intermezzo: Pattern Matching |
| V | Generative Recursion |
| Intermezzo: Vectors |
| VI | Accumulators |
| Epilogue |