CS 5010: Module 01

Module Overview

This week we will learn about the Function Design Recipe, which is a technique that will help you to achieve the goal of this course: writing beautiful programs.

The Function Design Recipe has six steps:

  1. Data Design
  2. Contract and Purpose Statement
  3. Examples and Tests
  4. Design Strategy
  5. Function Definition
  6. Program Review

We will spend most of the week (Lessons 1.2-1.5) on Step 1, Data Design. We will write down a recipe for doing a data design, and we will learn about templates, which allow us to process data by simply filling in the blanks.

We will learn about the other steps of the design recipe, and we will learn about the first of our design strategies, combining simpler functions.

Course Map

course map

Readings

Read the Prologue and Part I from our textbook, which introduce you to programming in Racket's Basic Student Language, using fixed-size data.

Resources

Lessons

Activities

Please do the following activities:

Problem Set

Problem Set 01 is due Monday, 23 January.

For debugging: Click here to validate.