CSci 1301: Lab 8

You may work in groups of 2 (preferred) or individually.

What to submit

At the end of the lab please send me and your group partner(s) all your Scheme files as e-mail attachments. My e-mail is elenam at morris.umn.edu. The subject of your e-mail must be "1301 Lab 8" followed by "Final" or "Not final", depending on whether this is a final submission or you are still working on it. If you need to finish it, make sure to set up a time with your group partner(s) to finish the lab.

When to submit

Due Tuesday, December 1st, at 11:59pm. If you submit the final version during the lab, you are done.

Problem 1 (10 points)

Question 1 Write a function that builds filter functions, similarly to a building function for map or foldr here. Your function must take one parameter (the filtering criterion which is a function) and returns a function that filters a list according to that criterion. For instance, using the filtering function builder allows us to create a function to filter out all numbers divisible by 3 by passing an appropriate criterion function to a filter-builder.

You may use local or lambda to define the function.

Question 2

Use your function to define the following functions. Use lambda to define the criterion function that is passed to filter-builder.

Problem 2 (10 point)

Exercises 23.2.2, 23.2.3, 23.2.4, 23.2.5


CSci 1301 course web site.