CS Curricula

←All schools

Wesleyan UniversityWebsiteAcademic Catalog

Mathematics and Computer ScienceDepartment Website

BS Degree in Computer Sciencesource 1source 2source 3

32 units needed for graduation. Updated for 2023-24.

CS Courses

Math/Stat Courses

Other Courses


Student Learning Goals

  • Understanding abstraction: At its heart, computer science is the study of abstractions for the purpose of understanding computation, and as such, students must learn appropriate levels of abstraction for solving computational problems. All courses in the curriculum contribute to this goal.
  • Programming: Students must learn how to program in a high-level language, as such programming is the primary tool in computer science. This is typically how students are first exposed to the field, and our majors achieve this goal in their first or sophomore years by taking the gateway sequence COMP211–212.
  • Analysis: Students must learn how to reason about computation; this includes analyzing algorithms and proving properties such as correctness and complexity, and requires an understanding of appropriate mathematical tools. The courses that focus primarily on this goal are COMP312 (Design and Analysis of Algorithms) and COMP321 (Design of Programming Languages).
  • Creation: Students must learn how to create original computational structures; this requires an understanding of fundamental techniques in algorithm and data structure design and an ability to combine established techniques in novel ways. All courses in the curriculum contribute to this goal.
  • Limits: Students must understand not only how to analyze and create computational structures, but also the limits of computation itself; this requires an understanding of the mathematical foundations and formalisms of computer science. This goal is primarily addressed in COMP301 (Automata Theory and Formal Languages).

History of the Major

2023  
2022  
2021  
2020  
2019  
2018  
Replace Linear Algebra → Math Elective.
Allow COMP 323 (Programming Language Implementation) instead of COMP 321 (Programming Languages).
Allow COMP 332 (Computer Networks) or COMP 333 (Software Engineering) instead of COMP 331 (Computer Structure and Organization).
2017