Princeton University
Computer Science Dept.

Computer Science 217
Intro to Programming Systems

Perry Cook

Spring 1999

General Information | Lecture Schedule | Assignments | Handouts | What's New?

Course Summary

The purpose of this course is to provide the fundamental background necessary to understand, design and implement the components of programming systems. Examples of such components include text editors, assemblers, compilers, loaders, interpreters, and portions of operating systems. The course is divided into three major parts, machine organization and assembly language programming, program design and development, and software tools. Prerequisite: 126.

Administrative Information

Lectures: TTh 9:00-10:20, Room: CS 105

Professor: Perry Cook - 408 CS Building - 258-4951

Undergraduate Coordinator: Tina McCoy - 410 CS Building - 258-1746

To send anonymous comments to the professor, use the anonymous remailer at cs217@cs.
Teaching Assistants:
Name & 
Home Page
Han Chen Akihiro Nakao
E-mail chenhan@cs nakao@cs
Office 316 CS bldg 216 CS bldg
Phone 258-5386 258-5389
Precept Wednesday 3:30 - 4:20  Thursday 3:30 - 4:20 
Location 103 CS bldg 103 CS bldg
Office Hours Monday 2:00 - 2:50 
Thursday 2:00 - 2:50
Monday 9:30:-10:20 
To contact a graduate teaching assistant, either send e-mail, make an appointment, or stop by the assistant's office. If you need to send mail to all TAs, the address is cs217@phoenix.


You will be responsible for the material presented in every lecture. Some of this material will not be in the textbooks.
You should attend one precept each week. You can choose any one among those listed above.

You should try to keep going to the same precept as far as possible since that's how you will be judged for participation (of course if you miss one you are allowed to go to another).

If you can not attend any of these precepts, see Professor Singh as soon as possible.

We will administer make-up quizzes only in the case of documented illnesses. (We do not consider a broken alarm clock to be a documentable illness, even though the alarm clocks at Princeton seem to be suffering from some sort of epidemic.)
See assignments page.
Please monitor the newsgroup regularly, because we will use it to make announcements. Note that there are old articles from last semester -- we left them because we thought they might be useful to folks this semester.
The grade weighting for the semester will be:

Midterm: 20%
Quizzes: 15%
Programs: 45%
Precepts and Class: 5%
Final Programming Project: 15%


You should get over to the bookstore soon (now) and purchase at least Harbison and Steele, and Kernighan and Pike. There will be reading assignments the first week, and a quiz on Thursday of the 2nd week.