CS 5010: Problem Set 01: Hello, World!

Due: Monday, January 25, 2016 at 5pm Eastern Standard Time.

The goal of this problem set is to give you exercise with the systems we will use in CS 5010, and to make sure you know how to commit your solutions to the CCS github.

Submit your homework following the instructions in Submitting Your Homework, and include the required deliverables.

As of this writing (1/11/16), we do not know whether your private repositories will be set up in time for this problem set. If we set up your private repository, deposit your work there, following the directions in Submitting Your Homework. Otherwise, set up a public repository called pdp-YOURNAME, where YOURNAME is your CCIS login name, in your CCIS github repository, and deposit your work in a folder called set01 there.

We will check to see whether you have provided all the deliverable functions for this problem set, but the problem set will otherwise be ungraded.

You must use the HtDP Beginning Student Language to solve the problems.

For these problems, download a copy of extras.rkt and put it in the folder with your solutions. Then import this library by including the line

(require "extras.rkt")
at the top of your file with the other requires. Then, for each problem, put in lines that say
(provide function)
for each deliverable function. Thus, for problem 1, the top of your file should say
(require rackunit)
(require "extras.rkt")

(provide cube-volume) 

This will allow our testing framework to import your file and check to see that you've provided all the deliverable functions.

Remember that you must follow the design recipe. Your deliverables include the data definitions (including interpretation and templates), contract and purpose header, code, and tests. Be sure to sync your work and fill out a Work Session Report at the end of every work session. Use the Work Session Report that is found here

Do the following exercises from HtDP/2e. These should all be easy, but be sure to include all of the items in the design recipe. If there are no data definitions necessary, then say so in your file.

  1. Exercise 14 (cube-volume).
  2. Exercise 16 (string-last).
  3. Exercise 18 (image-area).
  4. Exercise 20 (string-join).
  5. Exercise 22 (string-delete).

Last modified: Mon Jan 18 2016