On this page:


home work!

There will be 1 problem set per week. Each problem set has the programming language that you must use for the assignment, the due date, and a purpose.

All homeworks consist of two parts:
  • finger exercises

  • graded exercises

Graded Exercises

Every week we will have the graders mark a subset of these problems. Which ones we will grade may not be decided until after you hand in solutions on Tuesday.

Graded exercises should be uploaded to the correct assignment on the handin server before the due date. (See Late Policy.)

Finger Exercises

Solving these finger exercises will prepare you for the homework problems. Solve as many as you can while you are reading the book. (Remember that learning to program, like learning a language or an instrument, requires you to practice.) For some a paper-and-pencil solution is enough; for others, you really want to open DrRacket and experiment/play. Feel free to discuss the problems and the solutions with classmates.

All instructors, TAs, and tutors can help you with these finger exercises.

You do not have to turn in finger exercises and you will not get a grade for them. But, when you ask for help with homework problems, we may ask you to solve one of these finger exercises or explain its solution.

The red links below are informative background, not assignments themselves.

A Complete Guide to the Handin Server

    Homework 1

    Homework 2

    Homework 3

    Homework 4

    Homework 5

    Homework 6

    Homework 7

    Homework 8

    Homework 9

    Homework 10

    Homework 11

    Homework 12

    Homework 13