For some time, the field of computer science has been considered an academic discipline, focused on theories and techniques to collect, analyze, and produce useful information. Rapid advances in the field have positioned computer science as the “mathematics of the twenty-first century” with broad application to real-life problems in virtually every other field.
The importance of computer science – which is expected to continue and increase in the future – is recognized in the undergraduate Basic Requirements, which specify some kind of computing requirement for every major offered in Arts & Sciences. Knowledge of the logic and capabilities of computing is an essential tool for the well-rounded, liberally educated person.
Undergraduate students majoring in Computer Science complete a structured program that encompasses the main questions: Given the enormous difficulty of writing large programs, what kinds of computer languages can be easily specified, easily understood, and yet mechanically translated? What are the most advantageous ways of distributing computing loads over a collection of networked processors? Are some functions inherently harder to compute than others? Do functions exist which cannot be computed? How is knowledge best represented in a computer? Exceptional majors may choose to pursue an Honors project in the senior year.