CS 5010 Module 01

Module Overview

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

The Function Design Recipe has 6 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.6) on Step 1, Data Design. We will write down a recipe for doing a data design, and we wil learn about templates, which enable 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, called "function composition."

Course Map

course map, week 1 b


Prologue and Part I from the textbook, which cover an introduction to programming, fixed-size data, and the Basic Student Language in Racket.




  1. If you did not complete the activities from Module 00, please complete them now.
  2. Do the rest of the exercises in Lesson 0.4 An Introduction to Racket

The two meetings of CS 5011, which start next week, will act as supervised laboratories where you can work on this assignment, but please do as much as you can before coming to lab.

Last modified: Thu Sep 18 12:05:33 Eastern Daylight Time 2014