Please Note: The future of the Third Stream Computing Minor is under discussion. Students taking CS235 are not guaranteed a minor in Third Stream Computing. Please contact the CS office for more information. x8043.
CS 101. Introduction to Computers and Computing
A course on developing skills in computer use. No
prerequisites. Offered alternate years.
CS 102. Computer Concepts and Applications
An introduction to Macintosh application development, using
the Hypercard/Hypercard system. Offered every fall.
CS 110. Fifth Generation Computing
A survey of recent efforts to design machines for logic programming. Prerequisite: CS 101, or consent of the instructor. Offered
occasionally.
CS 115. Cryptology
A study of secret codes and their relationship to computers. Offered
occasionally.
CS 135. Object-Oriented Programming
An introductory course in object-oriented programming, using the
language C++. No prerequisites. Offered every fall.
CS 157. Introduction to Graphics
An introductory course in computer programming with an emphasis on
computer graphics. No prerequisites. Offered occasionally.
CS 185. Colloquium: The Limits of Computation
An introduction to programming, the theory of computability, and
consideration of social aspects of technological advances. No
prerequisites. Offered occasionally.
CS 235. Computer Application Development
A course in developing computer applications using high-level
languages or authoring systems. Prerequisite: CS 102 or the ability
to program in HyperCard, and the consent of the instructor. Offered
every spring.
CS 299. Seminar: Mind and Machine
An exploration of topics in artificial intelligence, cognitive
psychology, philosophy of mind, and linguistics. Prerequisite: consent of the instructor. Offered alternate years.
CS 339. Projects in Computer Application Development
A seminar-like course in which software availability in various areas
of the liberal arts are studied and in which each student develops and
presents to the class a sophisticated computing application in some
specific academic area. Offered alternate years.
CS 135. Object-Oriented Programming
An introductory course in object-oriented programming, using
the language C++. No prerequisites. Offered every fall.
CS 150. Computer Science I
An laboratory-based introduction to the field of computer science. The laboratories are used to teach programming in C. This is the
standard introductory course for the major. No prerequisites. Offered every fall.
CS 151. Computer Science II
A laboratory-based continuation of CS 150, again using the language C. Emphasis is on data structures and advanced programming techniques. This is the standard second course for the major. Prerequisite: CS
150 or CS 135. Offered every spring.
CS 210. Computer Organization
An introduction to computer architecture. Required for the major. Prerequisite: CS 151. Offered every fall.
CS 268. Software Development
A laboratory course in which students learn advanced principles of
software design while working on a large programming project. Prerequisite: CS 151 and CS 275. Offered occasionally.
CS 275. Computer Science III
A rigorous study of algorithms and data structures using the Scheme
programming language. Required for the major. Prerequisites: CS 151. Offered every fall.
CS 280. Computer Science IV
A continuation of CS 275, with an emphasis on the principles of
programming languages. Prerequisite: CS 275. Offered every spring.
CS 299. Seminar: Mind and Machine
An exploration of topics in artificial intelligence, cognitive
psychology, philosophy of mind, and linguistics. Prerequisite: consent of the instructor. Offered on alternate spring semesters.
CS 331. Compilers
A laboratory course on compiler design. Students write a compiler for
a language developed for this course. Prerequisite: CS 210 and CS
275. Offered on alternate fall semesters.
CS 341. Operating Systems
An advanced course on operating systems and systems programming. Prerequisites: CS 210 and CS 280. Offered on alternate fall
semesters.
CS 357. Computer Graphics
An advanced course on graphics programming. Prerequisites: CS 151, CS
275, and Mathematics 232. Offered on alternate spring semesters.
CS 364. Artificial Intelligence
A study of the techniques currently being used in programs that mimic
human behavior. Prerequisite: CS 280. Offered on alternate spring
semesters.
CS 368. Senior Laboratory
This is a topics course usually involving a large programming project. The prerequisites vary with the topics. Offered occasionally.
CS 383. Theory of Computer Science
A course in the study of computability and decidability. Required for
the major. Prerequisite: CS 280. Offered every spring.
CS 386. Advanced Concepts in Programming Languages
A course in formal semantics, the theory of types, and type
inference in programming languages. Prerequisite: CS 280. Offered on
alternate spring semesters.
CS 401. Honors
This course is open only to those who have been invited into the Honors
program.
CS 995. Private Reading
Private readings are used both for individual programming projects and
for readings in material not covered in regular courses. Because
these are very demanding in terms of faculty time, not all requests
for private readings can be granted. Reading courses require the
consent of both the instructor and the Program Director.
webmaster@cs.oberlin.edu