Part One: Introduction

With the setup complete we're ready to start learning to program! In this first part of the book, which covers several chapters, we have four learning goals:

  1. to understand a basic model of how code runs, known as the substitution model of evaluation;
  2. to apply structural recursion over the natural numbers;
  3. to understand composition and abstraction using functions; and
  4. to get comfortable writing, running, and debugging code.

We'll do this by creating computer graphics, part of subfield of computing known as creative coding. In doing so we'll get a little bit of experience as a creative coder, though we won't have the time to explore more than a tiny fraction of the field. If you decide you'd like to continue with creative coding, at the end of this part are some resources to go further.