MCS-177 Lab: Movie Query System


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 Tuesday, November 16 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 a lab instructor after your second day of working together in lab (Thursday, November 18), 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 Tuesday, November 16, you should read section 7.6 through at least exercise 7.24 on page 190.

In lab

You are required to do exercises 7.22-7.32 for the lab, and you may additionally do as many of exercises 7.33-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.