Jim Miller's 6.001 Mantras

  1. Every expression* has a value. *: Except for errors, infinite loops, and the define special form.
  2. To find the value of a combination,
  1. The value of a lambda expression is a procedure.
  2. The value of a quote expression is the thing quoted.

Four Kinds of Expressions

  1. Constants (numerals, quoted strings, booleans #t and #f, ...)
  2. Variables (names for values; the value comes from the current environment)
  3. Special forms: and, begin, case, cond, define, do, if, lambda, let, let*, letrec, or, quasiquote, quote, set!
  4. Combinations