|
James A. Foster |
|
|
CS 404: Derivational Programming (Spring 1997)Welcome to CS 404, Derivational Programming. This page contains the following information related to this class:
AnnouncementsThe rules for playing the Knights and Knaves game. There is another knights and knaves special journal assignment this week.
Course ObjectivesThis course will teach you a new approach to programming. Essentially, the idea is to treat a specification as an algebraic equation with the program as the unknown. Solve for the unknown and you get a program which is, by definition, correct. From the preface of the text: ... an approach [to programming] in which programs can be developed reliably, with attention to the real issues. It is a practical approach based on methodically developing programs from their specficiations. Besides being practical, it is exciting. Many programs can be developed with relative ease. Once difficult problems can be solved by beginners. Elegant solutions bring great satisfaction. This course uses the Moore method. The class is a cooperative laboratory for students to work together in teaching themselves the material. The instructor's function is as a resource and as an observer. The material is learned by students performing proofs on the board with the encouragement and criticism of all the class. It is vital that students take the responsibility for both their education and their behavior in the class.
Activities and GradingIn the Moore method, the main criteria for success in in-class participation. Students will be attempt to solve every unsolved problem in the text. They will present these solutions on the board during class. There will be two examinations. The midterm will be an in-class written examination. The final will be a one hour oral examination. Note: you will need to schedule your oral final with us before finals week. Students will keep a weekly journal of their activities for the course. They will record: how much time they spent on this class each day, what they found the hardest and easiest task for that week, why these tasks were easy and hard, solutions to extra problems which may be assigned from time to time. Students will turn in journal entries for a given week in class each Friday. Here is a typical journal entry template: in postscript, and in LaTeX. Your final grade will be determined as follows:
Text and errataProgramming in the 1990s. E. Cohen, Springer-Verlag, 1990. (The errata sheet).
Teaching Staff
Additional office hours are available by appointment.
Other Information
Exercises
Journal Assignments
Information about ExamsHere is the answer key for Exam One (in postscript). Here is information on the distribution of grades. |
|
Last Updated 01/13/2003 15:56 -0800 |