CSE526: Principles of Programming Languages
Spring 2003
Scott Stoller

Other CSE526 Pages


Contents of this Page

Course Description
Exam Guidelines
Grading Policies
Grading Statistics
Grading Weights
Submission of Assignments


SolarSystem Data: Catalog number: 526. Course ID: 301593. Class Number: 40513. Section: 01. Term (Spring 2003): 1034.

Instructor: Scott Stoller

TA: Hui Liu   huiliu AT cs DOT sunysb DOT edu

Meeting Time and Place: Tuesday and Thursday, 11:20am-12:40am. Light Engineering 152.

Scott's Office Hours: Monday, Tuesday, Wednesday, Thursday, 4pm-4:30pm. Computer Science 1429.
TA's Office Hours: please email the TA for an appointment.

Course Description

This course is a survey of the theoretical basis for the design, definition, and implementation of programming lanuages, and of frameworks for specifying and verifying program behavior. For more details regarding what this course is about, look at the textbook.

John C. Reynolds. Theories of Programming Languages. Cambridge University Press, 1998.

In the Preface, John Reynolds nicely expresses his goal, which is also the goal of this course:

My goal is not to train future theoreticians of programming languages, but to show a broader audience of computer scientists what is known about programming languages and how it can be expressed precisely and rigorously. Thus I have tried to state language properties with mathematical rigor, but with relatively little emphasis on how these properties are proved.
The next few paragraphs of the Preface discuss why this material is important.

A copy of the textbook is on 2-hour reserve in the Computer Science Library.

Coursework will include written homeworks, exam(s), and possibly some programming assignments.


The best way to get answers to questions is to come to office hours. The advantages relative to email are: (1) almost everyone can talk much faster than they can type, (2) your hands and mine are much more likely to get repetitive stress injuries than our jaws; and (3) fully clarifying an issue often requires multiple rounds of question-and-answer, which can be completed in 5 minutes of conversation but may drag on for days when done by email.

Exam Guidelines

During exams, you may use the course textbooks, your own notes, your own homework assignments, handouts that were distributed in class or posted on the course web page, and a dictionary. You may not use someone else's notes or homework assignments or mechanical reproductions of all or part thereof. You may not use other textbooks or mechanical reproductions of all or part thereof. You may not use computers (PDA, laptop, etc.).

The instructor may look at materials that students are using during the exam to ensure that these guidelines are being followed. Violations will result in a score of zero on the exam and will be reported to CEAS's Committee on Academic Standing and Appeals (CASA).

Missing an exam is a serious problem. If you miss an exam, you need to have a very strong reason substantiated with convincing evidence (for example, an invoice from the doctor or hospital), otherwise you will get a zero on the exam.

Grading Policies

If you have questions about the grading of an assignment, first see the T.A. who graded it, preferably during office hours. This helps ensure consistency of grading. If the issue has not been resolved to your satisfaction after talking to the T.A., then come talk to the instructor, preferably in person, during office hours.

Each assignment is graded relative to some maximum number of points (e.g., 20 or 100). The maximum number of points is unrelated to the weight of the assignment in the course grade. Each score is normalized into a number between zero and one (e.g., 19/20 -> 0.95) and then multiplied by the weight of the assignment to obtain a weighted score. Course grades are based primarily on the sum of the weighted scores.

Grading Statistics

The following information may be slightly inaccurate, due to score adjustments, late submissions, etc.

Item Out Of Mean Std.Dev. Histogram
hw1 30 23.2 7.5
hw2 100 90.0 8.9
hw3 100 75.0 13.3
hw4 100 87.9 10.4
hw5 100 85.9 13.1
hw6 100 86.2 14.3
exam1 100 82.4 11.1 histogram
hw7 100 89.8 14.1
exam2 100 74.6 12.7 histogram
hw8 100 83.4 14.3

Grading Weights

Small variations in these weights are possible, depending on the number and difficulty of future homework assignments.



All students are expected to follow CEAS's
policies governing academic dishonesty. Suspected academic dishonesty will be reported to CEAS's Committee on Academic Standing and Appeals (CASA).

If your submission includes any material created by other people, your submission must clearly indicate the sources of such material. Failure to indicate the sources will be treated as plagiarism.

Discussing assignments with other people is fine. However, each person must write his or her own submission independently. Showing your own work to other students, giving it to them, or making it accessible to them (e.g., by making the files world-readable, whether intentionally or through carelessness) will be treated as academic dishonesty.

Submission of Assignments

All assignments should be submitted as printouts in class on the due date, unless the assignment specifies otherwise. Assignments submitted after the end of class on the due date are late and receive a -3% penalty. Assignments submitted the next day receive a -6% penalty, and so on.

Students with Disabilities

The Provost requires that the following statement be included in syllabus handouts:
If you have a physical, psychological, medical or learning disability that may impact on your ability to carry out assigned course work, I would urge that you contact the staff in the Disabled Student Services office (DSS), Room 133 Humanities (moved to ECC Bldg during renovation of Humanities), 632-6748/TDD. DSS will review your concerns and determine, with you, what accommodations are necessary and appropriate. All information and documentation of disability is confidential.