DEPARTMENT OF COMPUTER AND INFORMATION SCIENCES


CISC 470/670 Programming Languages
Syllabus
Fall Semester 2000

Meeting Time and Place

Tuesdays/Thursdays 2:00-3:15 Recitation Hall 101.
Important announcements are usually made at the beginning of class. Quizzes are also given at the beginning of class on Tuesdays.

Prerequisites

(Logic and Programming) Programming skill in a block structured language and Lisp; an understanding of symbol tables, lists, trees, stacks, queues is assumed (e.g., CISC 220); CISC 310.

Recommended Background

CISC 320. (Algorithm and Advanced Programming)

Required Textbook

Programming Language Pragmatics, Michael Scott, Morgan Kaufmann Publishers, 2000.

Course Objectives and Content

This course examines the fundamental principles at work in the most important contemporary languages, highlights the critical relationship between language design and language implementation, and devotes special attention to issues of importance to the expert programmer. Students should emerge better prepared to choose the best language for particular projects, to make more effective use of languages they already know, and to learn new languages quickly and completely.

You should consider taking CISC 470/670 if you are curious about:

AND you have the proper prerequisites.

Topics

In this course, we will discuss the following basic concepts that underlie all programming languages:

Course Catalog Description

Selection, use and implementation of appropriate language(s) for given problems. Syntax, semantics, pragmatics, parameter passsing and abstract data types.

Course Requirements and Grading

Email Questions

I have found that the quickest way to resolve ambiguities and answer questions o n homework and programming assignments is via email. Any questions sent to pollock@cis will be anonymously posted with an answer via email to the entire class.

Assignment Submission

The due dates are to be taken seriously and you should not expect them to be extended. The pace of work is implicit in the due dates and necessary if you expect to finish by the end of the semester. Deliverables to be graded should be turned in at the start of class on the specifie d due date. NO late assignments will be accepted FOR FULL CREDIT without discussion with me prior to the due date. If you can not reach me, leave a message on my voicemail. All other assignments not delivered by the due date are considered late.

My philosophy on late assignments is: (1) Everyone should try their best to complete all assignments by the specified due date. (2) People who work conscientiously to make the deadlines s hould be rewarded for their promptness and sacrifice of sleep. Thus, allowing others to hand in late assignments without some penalty is not fair to these people. However, there are various circumstances that may prevent you from completing an assignment by the due date. Allowing no late assignments would not give you much incentive to continue to work on the assignment, which is a major source of learning in this course. Thus, I believe late assignments are better than no assignment.

Late assignments will be penalized 10% off the total possible points if turne d in within the first 24-hour period after the specified due date and time, and 10% per 24-hour period (or fraction of a day) (including weekends) after that time, up to a week after the due date. Late assignments will be accepted with penalty up to one week after the due date. Assignments submitted at any later time without an approved excuse will not be accepted. It is up to you to determine the version of your assignment to be graded. You must weigh the late penalty against the completeness of your assignment.

Regrading Policy

If you are dissatisfied with a grade on a homework, programming assignment, or exam, you should consult the instructor directly within a week of the day the graded assignment was returned to you. No regrade requests will be considered after this week period.

Posting Grades

With your permission, grades will be posted periodically (by your secret code) o utside my door (101D Smith Hall). Questions about accuracy of recorded grades should be addressed to me.

Policy on Academic Dishonesty

The assignments in this class will be performed in groups. You are permitted to consult with other students and professors on any conceptual problems or for debugging assistance on all programming assignments. Any evidence of collaboration other than this kind will be handled as stated in the Official Student Handbook of the University of Delaware. If you are in doubt regarding the requirements, please consult with me before you complete any requirement of this course.
Staff Name Office Email Phone Office Hours
Instructor Lori Pollock 101D Smith pollock@cis.udel.edu 831-1953 3-4 pm Mondays, 2-4 Wednesdays, and by appt
TA Yaqin Zhu zhu@cis.udel.edu 831-2770 Tuesdays 11-1
TA Office hours held in 404 Wolf Hall, Phone 831-2770