Syllabus: CISC 280 Programming Paradigms

Fall, 1996

Instructor: B. David Saunders
Office: 456 Smith Hall, Hours: 2:00-3:00MW and by arrangement
Phone: 831-6238, Email: saunders@cis.udel.edu

Teaching Assistant: Kai Chen
Office: 115C Pearson Hall Hours: 2-4pm Thursday
Phone: 831-1949, Email: kchen@cis.udel.edu

Textbook:
H. Abelson and G. Sussman, Structure and Interpretation of Computer Programs,
The MIT Press, McGraw Hill Book Company

The computer (composers) project number is 2020.

Coverage and pace, tentative

Chapters 1 through 4 will be covered, with some deletions and additions. You should read each topic at least twice (not counting review), once just before the lecture on the material and again just after. To assist with this, detailed reading assignments will be given at each lecture. The following indicates the pace of the course.

Week 1: Scheme (lisp) syntax, substitution model -- Reading: Preface, Forward, Section 1.1

Week 2: Proceedures and processes, repetition -- Reading: Section 1.2

Week 3: Procedures as first class objects -- Reading: Section 1.3

Week 4: Compound data -- Reading: Section 2.1

Week 5: Lists and trees -- Reading: Section 2.2

Week 6: Multiple representations -- Reading: Section 2.3

Week 7: Generic operators -- Reading: Section 2.4

Week 8: Mutable objects, state -- Reading: Section 3.1

Week 9: The environment model of evaluation -- Reading: Section 3.2

Week 10: Stacks, queues, tables -- Reading: Section 3.3

Week 11: Streams -- Reading: Section 3.4

Week 12: The Metacircular Evaluator -- Reading: Section 4.1

Week 13: Logic Programming -- Reading: Section 4.4

Week 14: Query Systems -- Reading: Section 4.5

Exam schedule

Wednesday, October 16, First Midterm Exam
Monday, November 25, Second Midterm Exam
Friday, December 13, Final exam 1:00-3:00pm

Grading

Midterm I, 20%
Midterm II, 25%
Final, 35%
Homework Assignments, projects, classroom performance 20% .

Homework

Assignments will be distributed throughout the semester, for the most part on a weekly basis. Homework assignments are due at the start of class on the announced due date. The course homepage will contain a record of assignments and will also contain a brief summary of each class topic and the associated reading.

Policy on plagarism

All homework, programming projects, and exams in this course are designed to be done {\em individually}. You may discuss problems in general, you may help each other by discussing bugs and suggesting debugging strategies of computer programs. But the giving or taking of another person's work (with or without modification of detail) is plagarism and will be handled in accordance with University procedures.

saunders@cis.udel.edu