MC27L Lab 5: Movie Query System (Spring 1997)

Due: Wednesday, May 7, 1997


For this lab, you will work through section 7.6 of the text. We want you to work on this lab in groups of two (with perhaps one group of three, should that prove necessary due to an odd number of students). You should tell us at the start of lab on Thursday, April 24th whom you intend to work with; otherwise we will make group assignments for those students who have not decided. You may work with someone from another lab section, but if so, you should both attend the same lab section while working on this lab.

We warn you that working in a group of two does not mean that your work load will be halved; in fact, some groups may find that the amount of hassle will effectively increase the work. Our intention is that you gain experience in working in teams, since teamwork is very common in today's workplace. You should have a clear understanding of each other's responsibilities, and be dependable and punctual in carrying them out. Also, be sure that neither partner monopolizes the work, but rather that you share it as equally as possible. Finally, we strongly encourage you to set up a group meeting with your lab instructor after your second day of working together in lab (Tuesday, April 29th), so that we can assess how the project is going and, if need be, suggest strategies for more successfully working together.


Before coming to lab on Thursday, April 24th, you should read section 7.6 through at least exercise 7.24 on pages 225-226. Barbara will be discussing section 7.6 in class on Friday, April 25th.

In lab

You are required to do exercises 7.22-7.31 for the lab, and you may additionally do as many of exercises 7.32-7.38 as you have time and interest. You should probably do exercise 7.34 before exercise 7.35, but otherwise the optional exercises are independent of one another, so you can generally do any of them without having done the preceding ones.

Following is a breakdown of the exercises into related groups:


As usual, write up a lab report that explains all of what you did to an audience generally knowledgeable about Scheme and such, but ignorant of specifically what you did. Answer all of the questions posed, but do not simply write up your lab as a sequence of exercises. Instead, try to convey the big picture of what you accomplished. Remember, there are some tips in the document entitled "Suggestions for clear lab reports in computer science courses."

Course labs web site:
One lab instructor: Karl Knight <>
The other lab instructor: Max Hailperin <>