Computer Science Major | Computer Science Minor | Data Science Minor | Mathematics Major | Mathematics Minor | Statistics Minor

General Distribution Requirement

All courses in the department count toward the general distribution requirement in mathematics and natural science except those numbered COMP 154 and MATH 212. Both COMP 154 and MATH 212 count toward the humanities general distribution requirement.

General Education Requirements

Courses that meet the general education requirements in writing, quantitative thinking, internationalism and US identities and differences will be posted on the Registrar's web page in advance of registration for each semester.

Additional information regarding the general distribution requirement and the general education requirements can be found in the graduation requirements section of this catalog.

Honors Program

The Mathematics, Statistics, and Computer Science Department participates in the honors program. Eligibility requirements, application procedures and specific project expectations can be found on the department webpage or the Academic Programs and Advising Office.

Topics Courses

MATH 194, MATH 294, MATH 394, MATH 494, STAT 194, STAT 294STAT 394, STAT 494 

Selected topics in mathematics, applied mathematics, and statistics. When the course is offered, the topic and prerequisites for that semester will be announced and posted prior to registration. (4 credits)

Independent Study

The department offers independent study options in the form of tutorials, independent projects, internships, preceptorships and Honors independent projects. For more information contact the department and review the Curriculum section of the catalog.

Computer Science

Program coordinator: Susan Fox

The program stresses the fundamental principles of computer science-theory of computation, algorithms, languages, software design, and computer organization-as well as programming and the applications of computer technology. A computer science graduate from Macalester will be well prepared for either advanced study or research and development work in industry. The program is firmly committed to the principles and ideals of a liberal arts education. A computer science major or minor includes both technical requirements as well as extensive course work in the humanities, social sciences, and fine arts. An important goal of the program is to produce graduates who are self-educators and life-long learners, characteristics that are so important in a rapidly changing discipline.


Students seeking an introductory computer science course typically choose between COMP 120 Computing and Society and COMP 123 Core Concepts in Computer Science. These courses are suitable for students with little or no background in computing, programming, or computer science and function both the first course in the major and minor as well as an introduction to the discipline for those not planning to take further coursework. Students who have significant prior experience of computer science may choose to enroll in COMP 127  Object-Oriented Programming and Abstraction. The rare student may begin coursework beyond that point. Students who are uncertain which course to enroll in should contact the program coordinator for advice.


Topics Courses

COMP 194, COMP 294, COMP 394, COMP 494 

Topics of interest to students in the field of computer science but which are not part of the regular curriculum. When the course is offered, the topic and prerequisites for that semester will be announced and posted prior to registration. (4 credits)

Independent Study

The department offers independent study options in the form of tutorials, independent projects, internships, preceptorships and Honors independent projects. For more information contact the department and review the Curriculum section of the catalog.

Computer Science Major

Major Requirements

  1. Three introductory courses, taken in sequence. Students with prior experience should determine proper placement in this sequence in consultation with program faculty. Students prepared to skip this entire sequence must take a fourth advanced elective.
  2. Three supporting math courses: MATH 279, and any two additional math courses, numbered 135 or above, taken at Macalester.
  3. Three core courses: COMP 221, COMP 225 and COMP 240
  4. Three advanced elective courses in computer science, numbered 300-499; at least one of these courses must be a designated Capstone course taken before spring semester of the senior year.
  5. Capstone requirement: Pass the project component of the Capstone course, and pass the capstone presentation requirement.

    Mathematics and statistics courses that support a Computer Science major particularly well include: STAT 155, MATH 236, STAT 253, MATH 313, MATH 365 and MATH 379.

    Students who plan to attend graduate school in computer science are encouraged to take COMP 361, more than the minimum number of computer science electives, as well as additional supporting work in related disciplines.

    Students planning a Computer Science major who enter Macalester without prior experience should take COMP 123 in their first year.

Computer Science Minor

Minor Requirements

Requirements for a minor in computer science are:

Any five courses in computer science numbered 120-489. Minor plans including more than one crosslisted course require departmental approval. (Note: Credit can be awarded for only one of the introductory courses COMP 120 or COMP 123.)

No more than two courses can count toward any other minor or major.

Data Science Minor

The requirements for the minor are as follows:

Two courses in each of the three areas below.

  1. Computing
    *COMP 123 - Core Concepts in Computer Science AND
    * One of: STAT 112 Introduction to Data Science, COMP 124 - Object-Oriented Programming and Data Structures or COMP 302 - Introduction to Database Management Systems or COMP 365 - Computational Linear Algebra or COMP 440 - Collective Intelligence or COMP 484 - Introduction to Artificial Intelligence, or others as approved by the department.
  2. Statistics
    *STAT 155 - Introduction to Statistical Modeling AND
    *One of: STAT 253 - Statistical Machine Learning or STAT 453 - Survival Analysis or STAT 454 - Bayesian Statistics, or others as approved by the department.
  3. Domain area expertise
    * Two courses in a single domain meeting the following criteria: the courses should be focused around a theme (e.g., bioinformatics) and not a broad discipline AND that theme should
    one that allows the possibility of data science-related activities, either within the courses themselves or in the student's future career or further education.
    * Pre-approved domain courses are listed below. Proposals for other areas of domain expertise (supported by two courses) will be approved on a case by case basis by the department.

No more than two courses can count toward any other major or minor.
Applied Mathematics and Statistics Majors may not also earn a Data Science Minor.

To ensure a synthesis between coursework in the department and the domain of expertise, all students must complete an integrative essay that either a) discusses an already completed integrative project (a course project, internship, summer research experience, etc), or b) proposes an integrative project in the domain of expertise.

Pre-Approved Domain Courses

PHYS 120 - Astronomical Techniques and
PHYS 440 - Observational Astronomy

BIOL 260 - Genetics and COMP 320 - Computational Biology

Computational Linguistics

LING 100 Introduction to Linguistics and
LING 294 Computational Methods in Linguistics

Data-Driven Journalism
MCST 114 - News Reporting and Writing and one of the following:
MCST 355 - Advanced Journalism: Electronic
MCST 357 - Advanced Journalism: New Media

BIOL 285 - Ecology and the Environment and one of the following:
BIOL 342 - Animal Behavior/Ecology
BIOL 344 - Aquatic Ecology
BIOL 345 - Field Botany

Environmental Science and Policy
Two of the following:
ENVI 231 - Environmental Economics and Policy
ENVI 133 - Environmental Science
ENVI 240 - The Earth's Climate System
ENVI 150 Climate and Society
ENVI 160 - Dynamic Earth and Global Change

Geographic Analytics
GEOG 225 - Introduction to Geographic Information Systems and one of the following:
GEOG 262 - Metro Analysis
GEOG 362 - Introduction to Remote Sensing
GEOG 364 - GIS and Community Partnerships
GEOG 365 - Urban GIS
GEOG 366 - GIS for Global Urban Environments
GEOG 367 - Environmental Geographic Information Systems (GIS)
GEOG 368 - Health GIS
GEOG 378 - Statistical Research Methods in Geography

Political Analytics
POLI 269 - Empirical Research Methods and
one of:
POLI 214 - Cyber Politics
POLI 242 Political Economy of Development

Quantitative Economics
Two of the following:
ECON 381 - Introduction to Econometrics
ECON 472 - Quantitative Macroeconomic Analysis
ECON 485 - Empirical Finance

Quantitative Public Health
Two of the following:
BIOL 355 - Virology
BIOL 357 - Immunology
GEOG 256 - Medical Geography: The Geography of Health and Health Care
STAT 125 - Epidemiology

Social Processes and Relations
SOCI 269 Social Science Inquiry and
one of the following:
SOCI 190 Criminal Behavior/Social Control
SOCI 283 Economic Sociology

Mathematics Major

Major Requirements

Students earn a major in Mathematics by choosing between two paths: Mathematics or Applied Mathematics and Statistics.

Requirements for Mathematics are:

  1. Three courses that are introductory to the major (taken in any order): MATH 236, MATH 237 and MATH 279
  2. Two supporting courses: STAT 112 or STAT 155, and any non-cross-listed Computer Science course
  3. Five Math courses numbered 300 or above and including:
    At least one of MATH 377 or MATH 378
    At least one of MATH 376 or MATH 379
    At least one 400-level Capstone Course taken before spring semester of senior year
  4. Pass the Capstone Presentation

Requirements in Applied Mathematics and Statistics are:

  1. At least one calculus course taken at Macalester: MATH 137 or MATH 237
  2. Two core courses: STAT 155 and MATH 236
  3. Eight additional electives satisfying the following four requirements. Courses can double-count across categories but there must be eight distinct total courses.

    Computing: at least two courses chosen from COMP 112, COMP 120, COMP 123, COMP 221, COMP 225, COMP 302, COMP 365;

    Applied Mathematics Breadth: at least five electives chosen from STAT 112, MATH 237, STAT 253, MATH 312, MATH 354, MATH 365, MATH 432, MATH 437, STAT 453, STAT 454, MATH 455, MATH 479 (and topics 394/494 with departmental approval);

    Depth: at least four Mathematics or Statistics courses at the 300- or 400- level, including at least one 400-level capstone course;
  4. Pass the Capstone presentation requirement

Mathematics Minor

To obtain a minor in mathematics, you must complete the following:

  1. MATH 279, MATH 236, MATH 237 and at least 8 semester credits from Mathematics courses numbered 300-489, except topics courses unless prior departmental approval has been given.
  2. COMP 123 or an equivalent course.

No more than two courses can count toward any other minor or major.

Statistics Minor

Minor Requirements

Five courses total (with a maximum of two counting toward other majors, minors, or concentrations). These must include STAT 155 and STAT 253, and any three courses from the following: STAT 112, STAT 125, MATH 354, STAT 453, STAT 454, MATH 455, COMP 123, COMP 440, ECON 381, GEOG 225, GEOG 378, POLI 269, PSYC 301, SOCI 269, or another course approved by the Mathematics, Statistics, and Computer Science Chair. At most, one course may come from outside of Mathematics, Statistics, and Computer Science