CS 2135: Programming Language Concepts

Course Details

Staff | Discussion Board | Texts | Software | Grading | Policies | 2135 Home Page


Course staff

PositionNameEmail PhoneOffice Hour
Location
Office Hours
ProfessorKathi Fislerkfisler 508-831-5118Fuller 130Tuesday 10-11
Thursday 1-2:30
and by appt
TAChoong-Soo Leeclee01@cs FL 314Wednesday 12-3
TALuping Dinglisading@cs FL 141Monday 6:30 - 8:30pm
Thursday 6:30-7:30pm
SAJim Nicholsjnick@wpi FL A25Wednesday 5-8pm
Friday 3-4pm
SAOleg Rekutinuksi@wpi Higgins Lab 230Tuesday 8-10pm
Thursday 7:30-9:30pm


Discussion Board

Direct all course-related discussion to the
discussion board in the MyWPI area for this course.


Textbooks

Alternative 1: The Little Schemer. Matthias Felleisen and Daniel P. Friedman. MIT Press, 1996. ISBN 0-262-56099-2. (available in the bookstore)

Alternative 2: How to Design Programs. Matthias Felleisen, Robert Bruce Findler, Matthew Flatt, and Shriram Krishnamurthi. MIT Press, 2001. (available on-line).

Optional: The Seasoned Schemer. Matthias Felleisen and Daniel P. Friedman. MIT Press, 1996. ISBN 0-262-56100-X. (We won't use this book directly, but it would be valuable for students wishing to develop strong functional programming skills.)

Additional lectures notes and materials will also be posted on the website.


Software

We will use the MzScheme variant of Scheme for all coding projects in the course. You must use the MzScheme variant of Scheme. No other Scheme implementation provides the libraries that we will use in this course.

You can use MzScheme with your favorite editor, or you can use the DrScheme programming environment, which sits on top of MzScheme and provides several nice features, such as source correlation of errors and a project manager. Both DrScheme and MzScheme are installed on CCC (/usr/local/plt/bin/mzscheme and /usr/local/plt/bin/drscheme). Alternatively, you can download either package (for free) to your own computer (Unix, PC, Mac all supported, with files portable between them). Note that installing DrScheme also installs MzScheme.


Homework Pairs

Homework assignments will be done in pairs. Students will work in the same pairs throughout the entire term. You may form your own pairs at the start of the term. The course staff will pair up students who do not express preferences.

We use pairs because experience shows that people learn through explaining ideas and solutions to others. Both students in each pair should do each assignment, then compare solutions and choose one to turn in for grading. It is very important that you work through each assignment on your own because you will not pass the course if you do not pass the portions of the course that are graded individually! (see the grading policies). Students who rely on their partners to complete the assignments may not understand the material well enough to pass the exams.


Grading

There will be seven homework assignments, a small project, and two exams. Assignments will be posted on the assignments page as they become available (roughly one per week). Assignments will be due on Thursdays at 11:59pm. Late assignments will not be accepted.

Course grades will be computed according to the following rules:


Administrative Policies

Make-up Exam Policy

Make-up exams will only be allowed in the event of a documented emergency. The two exam dates are listed on the syllabus. You are responsible for avoiding conflicts with the exams. Do not plan to leave campus for the term before the final exam.

Late Assignment Policy

Late assignments will not be accepted without prior consent of the professor (the TAs are not allowed to grant extensions). Extensions will be granted only in the event of unforseen and documentable emergencies, or extenuating circumstances that you discuss with the professor well in advance. One pair member forgetting to turn in an assignment will not be considered an acceptable excuse for an extension.

Collaboration and Cheating Policy

Collaboration is prohibited on exams or the project. Collaboration is encouraged on homework assignments and labs. You may discuss problems across pairs, but each pair is responsible for writing up their own solution from scratch.

Violations of the collaboration policy on any assignment or exam will result in an NR for the course and a referral to the Student Life Office, in accordance with WPI's academic honesty policy. Exceptions to this rule are possible only if you admit your violation to the professor or one of the current TAs before we detect the violation (this gives you a chance to pass the course if, for example, you cheated in desparation the night an assignment was due, then felt guilty about it in the morning). If we detect the violation before you admit to it, no exception to the NR policy will occur. Egregious violations (such as breaking into another student's account to copy a solution) may still earn an NR even if you admit to them. You can safely assume that we will not begin grading an assignment before 9am on the calendar day after the assignment is due.

As examples, each of the following scenarios would constitute cheating (this list is not exhaustive!):

In constrast, the following scenarios would not constitute cheating:

If you are unsure whether an activity would constitute cheating, ask the course staff.

Special Needs and Disabilities Policy

Students requiring accommodation on exams or assignments due to disabilities must speak with the professor at the start of the term (and at least two weeks before the assignment due date or exam in question) to work out appropriate arrangements.


This page maintained by Kathi Fisler
Department of Computer Science Worcester Polytechnic Institute