CSE 428, Spring 2000: Syllabus

Instructor: Catuscia Palamidessi
Email:  firstname@cse.psu.edu
Office:  325 Pond
Off. Hours:  Tuesday, Thursday 10:30-11:30 or by appointment
Phone:   863-3599

Teaching Assistants:
Mihaela Oltea Herescu
Email:   herescu@cse.psu.edu
Office:  206 Pond
Off. Hours:  Tuesday 4:00-5:00, Wednesday 10:00-11:00

Yuhui Zhou
Email:  yzhou@cse.psu.edu
Office:  234 Pond
Off. Hours:  Monday, Friday 10:00-11:00

Teaching Intern:
Mike Nidel
Email:          man146@psu.edu

Lectures:  T,R 2:30-3:45 in 260 Willard
Midterms:   MT 1: Feb 17, 2:30-3:45 in class
  MT 2: Mar 30, 2:30-3:45 in class
Final:   May 4, 12:20-2:10, 260 Willard and 360 Willard

Mailing list:
Announcements concerning the course will be sent by email, via the mailing list of the course (cg428_class). It is very important that you check your CSE account regularly, or that you put a forward to the account you normally use.

Course Description: The goal of this course is to provide a foundation for understanding, designing, and implementing programming languages. In this course we will study essential concepts and structures found in modern programming languages. We will not focus on any one particular language, but rather we will examine features found in many different languages. We will also compare different programming paradigms, including imperative, functional, concurrent, and object-oriented. We will study the specification of programming language syntax and semantics, and the verification of program properties.

Assignments: There will be approximately 9 assignments. Some assignments will be written and some will be moderate programming exercises. These are very important. They are how you really learn the material. In general, it is not possible to succeed in the course without doing the assignments: some exam questions will be based on your understanding of the assignments.

Assignments are due at the start of class on the date specified. They will be accepted after that time until the start of the next class with a 20% penalty. No submission will be accepted after this time.

Academic Integrity: Every student is expected to submit only their own original work, or where applicable, to cite the origin of the code. This includes written and programming assignments. Any work submitted by a student which they did not originally develop must explicitly indicate the source of the work. Such sources include the textbook, other reference books, material on the web, and other individuals. The exception is material presented or distributed in class which can be used freely. Failure to follow these guidelines will result in swift and severe actions.

Exams: There will be two in-class midterm examinations, the first on February 17, the second on March 30. Furthermore, there will be a comprehensive final examination, which will be scheduled during the week of finals.

Grading: Final grades will be determined via a combination of the assignments (40%), the midterm examinations (15% each) and the final examination (30%). Usually, in a scale from 0 to 100, the final grades are roughly in the following correspondence with the numerical grades:

The above table is based on the experience of previous semesters and it is meant only to give you an idea. The actual grading will depend also on other factors, like the "natural cuts" on the distribution, the general performance of the class, etc.