Current Official Course Description. (Needs to be updated.) This course examines the major paradigms underlying modern programming languages. The course currently focuses on object-oriented and logic programming. The rationale of the paradigms is discussed along with typical programming idioms used with them. Programming exercises are used to illustrate concepts--the course does not aim to make students proficient programmers in all the language that will be studied.
Prerequisites. CS142 or equivalent.
Location and Times. Science
Center 354, TuTh 8:00-9:15.
Instructor. Alexis Maciel. Science Center
379, 268-2385, alexis@clarkson.edu.
Office Hours. M 2:00-4:00, Tu 9:30-11:00,
W 9:30-11:00.
Required Text.
Course Objectives.
Topics to be covered. Logic programming: basic Prolog syntax, unification and variable instantiation, backtracking, input and output, file handling, arithmetic, lists, conditional execution, cuts, repetition through backtracking, tail recursion, trees, and sorting. Programming language design and implementation: TBA.
Grading. Your evaluation will be based on several homework assignments, two tests, two self-assessments of your performance on these tests, one for each test, and a final exam. Your course grade will be computed using the following formula:
The final exam will be cumulative and can be used to make up for half of each test. The minimum grade you can get on a self-assessment is the grade you got on the corresponding test. Tentative dates for the tests are October 7 and November 18. All students are required to write the final exam (no exemptions).
Policy for missed work. There will be no make-up assignments. Late assignments may be accepted if a good excuse is provided and if arrangements are made at a reasonable time, in advance, if possible. Make-up tests can be arranged under the same conditions. Other special arrangements can be made for students forced to miss more than a few days of class.