| Course Numbers | 4003-450 and 4003-709 | ||||||||||||||||||||
| Course Title | Programming Language Concepts | ||||||||||||||||||||
| Course Description | A study of the syntax and semantics of a diverse set of high-level programming languages. The languages chosen are compared and contrasted in order to demonstrate general principles of programming language design. The course emphasizes the concepts underpinning modern languages rather than the mastery of particular language details. Programming projects will be required. | ||||||||||||||||||||
| Prerequisites |
| ||||||||||||||||||||
| Credit | 4 | ||||||||||||||||||||
| Instructor |
Andreas F. Borchert Building 10, Room 1180 afb@cs.rit.edu Office Hours: MWR 2-3pm, T 8pm (subject to change) and by appointment. | ||||||||||||||||||||
| Graders |
| ||||||||||||||||||||
| Lectures |
| ||||||||||||||||||||
| Materials |
| ||||||||||||||||||||
| Homeworks |
There will be nine weekly assignments consisting of programming tasks
and questions. But even if they appear in some cases to be small,
emphasis is to be given on elegance and very good readability. All assignments can be solved individually or in teams of two. In the latter case, both team members are expected to have contributed significantly to the whole assignment and both team members should be able to explain the entire work to me. You must submit only work that has been developed by you and your team partner. It is not permitted to discuss a solution to an assignment with anyone but your team partner and me. Cheating is graded as 0 and will not be dropped. Assignments are made available on each Monday on the course home page and distributed as handouts within the first lecture during a week. They are due by email no later than the following Sunday at midnight. You are invited to send questions regarding an assignment to me by email at any time. However, I cannot guarantee a timely response on questions during the weekend. Late submissions will not be accepted for whatever reason but the lowest grade of all assignments will be dropped. Please note that if you have questions about the grading of an assignment, you must bring it to my attention within one (1) week after the graded material has been sent back by email. After that time, no grade adjustments will be considered! | ||||||||||||||||||||
| Presentation |
You have to pick an arbitrary programming language that
is neither covered by CS1 to CS4 (this excludes Java and C++)
nor by this course (this excludes Perl, Prolog,
and Scheme) and to prepare a presentation for it that
is to be held during one
of the lectures in the 9th or 10th week. The selection of
the language needs my approval. If you have registered for 4003-709, the presentation of approximatively 15 minutes is to be extended by written material on web pages which should include several examples. Participants of 4003-450 have presentations of approximatively 10 minutes and do not need to provide additional material. However, teams of two are permitted and in this case one team member is responsible for the presentation while the other authors the web pages. Grades for the presentations are given on a pass/fail basis. The deadline for selecting a presentation is Sunday, 04/21/02, midnight (time stamp of email). If you fail to select a language before the deadline, your presentation will be considered as failed. | ||||||||||||||||||||
| Final Exam |
During the 11th week a final exam of 120 minutes will be
given that covers the entire course including lectures,
handouts, assigned readings, and assignments.
The exam is closed books
and notes with the exception of one letter-sized page of
handwritten notices.
The date of the final exam will be announced as soon as it is known; this should be prior to the sixth week of the quarter, according to RIT's Final Examination Policy. You must take the final exam at the time scheduled for your section; except as provided for by the Final Examination Policy, finals are not given early, nor will there be a makeup exam. In case of conflicting final exams, the Policy states that you, the student, must submit a written request for rescheduling your exam to the head of your department and to the instructor being asked to reschedule the exam by the last day of the sixth week of the quarter. | ||||||||||||||||||||
| Grading |
The activities of this course are weighted as following:
Numerical grades will be converted to letter grades according to the following scale:
The grades will not be curved. | ||||||||||||||||||||
| Academic Honesty | The DCS Policy on Academic Dishonesty will be enforced. You should only submit work that is completely your own. Failure to do so counts as academic dishonesty and so does being the source of such work. Submitting work that is in large part not completely your own work is a flagrant violation of basic ethical behavior and will minimally be punished with failing the course. | ||||||||||||||||||||