Computer Science 60
Principles of Computer Science
Overview, Fall 1999



On This Page

General Information
What is this course about?
Is this course for you?
Textbooks
Assignments, Exams, and Grading
Collaboration Policy and Honor Code

General Information

Instructor (2:45-4:00): Robert Keller
Office: Olin 242
Phone: x18483
E-mail: keller@cs.hmc.edu
Official Office Hours: MTW 4:00-5:00

Instructor (4:15-5:30): Zachary Dodds
Office: Olin 245
Phone: x18976
E-mail: dodds@cs.hmc.edu
Official Office Hours: T 2:00-4:00 and W 5:30-7:00

Class Time and Place: Course Homepage: http://www.cs.hmc.edu/courses/1999/fall/cs60/index.html

Graders/Tutors (aka "Grutors"): Help via E-mail: You can send e-mail to help@cs.hmc.edu for systems help. For short questions related to homework, mail cs60help@cs.hmc.edu. For more extensive help, please see a tutor or one of the instructors in person.

Is This Course for You?

The answer is YES! All right, seriously, the prerequisite for this course is CS 5 or an equivalent course at another college.

What Is This Course About?

The objective of this course is to introduce you to the basic principles of computer science. You will learn to use several different programming languages including an object-oriented language (Java), a functional programming language (rex), and a logic programming language (Prolog). The course covers topics in data structures, algorithms, complexity analysis, computability theory, logic principles, and computer architecture.

Texts

Assignments and Grades

Collaboration Policy - Honor Code

All conduct in this course should be conducted in accordance with the Harvey Mudd Honor Code. In particular, although discussion of problems with others is encouraged, programming in CS60 emphasizes individual learning, not group projects. We observe the following standard: "You may discuss the assignment with other students. You may not share [i.e. give or receive] written work of any kind, inside or outside the course". Elaboration: In the case of programming assignments, we consider "written work" to include email, computer files, fragments of files, and printed output. In developing code for a programming assignment, you can discuss ideas with others, but discussion of ideas must not involve wholesale examination or transcription of the actual working code of others, with the exception that you may use any code explicitly provided by the instructor.

If you get significant, but legitimate, help from another, you should acknowledge it on your submission. You do not lose credit for this.

If you have any doubts about whether a form of interaction constitutes a violation of this standard, it is incumbent upon you to ask the instructor prior to the issue.