Fundamentals of CS I (CS151 2001S)

Homework 6: Projects


Assigned: Thursday, April 19, 2001
Due: Friday, May 4, 2001
No extensions without prior permission!

Summary: In this assignment, you will apply your knowledge of Scheme to a larger project.

Purpose: To permit you to demonstrate your significant Scheme skills. procedues.

Collaboration: You should work with partners on this assignment, although you are not required to do so. You may also discuss the assignment with others, but you should make sure to document those discussions.

Time: I try to keep the core of my assignments under eight hours per week (extra credit may, of course, take extra time). Since this is a three-week assignment, when you find that you've already spent twenty hours each on the assignment, please let me know.

Since this assignment is so large, you will do yourself a disservice if you don't start it early.

Presentations: I have reserved class 55 for demonstrations of your projects. Be prepared to give a five-minute summary of what you did (showing the results, if possible).

Supporting Stuff: I will try to have some sample code ready by the end of this week.

Assignment Details

In this assignment, you are expected to do something interesting that exercises your Scheme skills. I would prefer that you limit your something interesting to one of two domains:

When you've decided on a project, you should let me know what you're planning to do so that I can decide if the scope is broad enough or too broad.

The GIMP and Script-Fu

If you decide to focus on the GIMP and Script-Fu, you should do something interesting graphically that goes beyond what we did in class. One project that may be particularly interesting is a set of filters that modify images. For example, you might design filters to blur, pixelate, or sharpen an image. (You may not use any built-in filters for this purpose.) There are many ways to organize your work. One particularly interesting strategy would be to write a lab based on your work.

If you need help figuring out some of the Script-Fu functions, please let me know.

Web Services

If you decide to write a Web service, you should build something that relies on files for some or all of the data. I will provide a sample plans service in the next day or so to help you think about how you might use files. Possibilities for web services include a dating service, a discussion board, and much more.



Mid-April [Samuel A. Rebelsky]

Thursday, 19 April 2001

Friday, 20 April 2001


Disclaimer: I usually create these pages on the fly. This means that they are rarely proofread and may contain bad grammar and incorrect details. It also means that I may update them regularly (see the history for more details). Feel free to contact me with any suggestions for changes.

This page was generated by Siteweaver on Fri Apr 27 08:13:56 2001.
This page may be found at
You may validate this page's HTML.
The source was last modified Fri Apr 20 08:20:11 2001.