CSC 160
Homework 8

Assigned 22 April, due 6 May

Essay, to be written individually

Re-read the adages page. Choose one (or several closely-related) adages, or one longer article, that mean more to you than they did at the beginning of the term.

Write an essay of one to five well-structured paragraphs on what this adage really means in practice. Do you agree or disagree? Support your claims with specific examples from your experience this semester.

You may also want to comment on your experience of Pair Programming: how well did it work, what were the advantages and disadvantages, what would make it work better, etc.?

Problems on natural numbers

Problems involving higher-order functions and/or local definitions

For these problems, you'll need to be in DrScheme's Intermediate language

Extra credit (using mutation, covered May 1)

For these problems, you'll need to be in DrScheme's Advanced language.

What to turn in and how

The essay should be written individually and turned in with one name at the top. The programming problems should (ideally) be written by teams of two students, using Pair Programming.

Also turn in a log of how many errors of different kinds you encountered in the assignment, with brief comments describing each one ("mismatched parentheses" is self-explanatory, but more complex errors might need more description). Note that "errors" means not only error messages from DrScheme, but also wrong answers. You may do this using the PSP forms, or simply by keeping track in a text file or on paper and turning it in.

Grading standards

Error log:       /30
(I'm not grading on how many or how few errors you encountered, only on whether you recorded them correctly.)

I sha'n't actually grade all the problems; consider the others "practice". For each function I grade, see the table below, which has columns for each step in the design recipe. You won't turn in a separate skeleton, inventory, and definition, but rather write a skeleton, then add an inventory, then add a body to turn it into a complete definition. However, if you don't get the definition working, comment it out and you'll still get partial credit for a correct skeleton and/or inventory.

Contract Examples Skeleton Inventory Definition Test results Working animation
(if applicable)
/5 /5 /5 /5 /10 /5 /10

General skills:

Following directions /10
Writing contracts from word problems /10
Choosing examples /10
Choosing names /10
Coding /10
Code re-use and function composition /10

Total:         /???


Last modified:
Stephen Bloch / sbloch@adelphi.edu