1 FIRST
2 SECOND
3 THEN

Lab 4

1 FIRST

Finish prior labs. Ask questions.

2 SECOND

Crucial DrScheme tips Part 3:

DrScheme has a really nice documentation system. You should figure out how to use it.

  1. Start up Firefox. You don’t absolutely have to do this first, but it makes everything else go faster.

  2. Start DrScheme. *IN EITHER WINDOW*, type "map". Without the quotes. Hit the F1 key. Firefox should open, with a bunch of choices.

  3. Click on the word "map" in the first entry. Voila! Documentation!

Use this all the time.

3 THEN

  1. Develop the doublemap function, that consumes a function and a list and returns the list formed by applying the function twice to each element of the original list.

  2. Develop the zip function, that consumes two lists of the same length and returns a new list of lists where each element of the new list is a list containing both of the corresponding elements from the original lists. Show me this one when it’s complete, for lab credit.

  3. Develop the quicksortt function, that conumes a list of numbers and sorts them like this: the empty list is already sorted. Any other list is sorted by appending the result of sorting all elements smaller than or equal to the first element to the result of sorting all elements greater than the first element. (You may already know this algorithm, as... quicksort). You will definitely need some helper functions for this. Nevertheless, it’s a straightforward structural recursion.

Time left? Write foldl.