Computer Science


Computer science is concerned in the broadest sense with the study of computation and applications of computing. Its development has been stimulated by collaborations with many areas including engineering, the physical and life sciences, mathematics and statistics and commerce.

Course offerings in the Computer Science program are intended to serve a wide variety of students, ranging from those whose primary interest is in information processing to those interested in applying computing to other fields.


The previously announced 2018 admissions process has had to be revised to align with required policies.

The 2018-19 calendar, taking effect in May 2018, contains two significant changes to program entry requirements. In particular, no minimum mark is required in calculus, but the minimum required marks in CSC148 and MAT102 are now set annually.

Since the 2018-19 contains significant changes, for both the May and August 2018 POSt admission periods, we will be admitting students who meet either the 2017-18 calendar requirements or the 2018-19 calendar requirements.

For both sets of requirements, the required minimum CGPA has been set to 2.8. For the 2018-19 requirements, the minimum required marks in MAT102 and CSC148 have both been set to 73%.


If you do not meet the requirements for entry using either the 2018-19 or the 2017-18 calendar (in particular, if you are in an upper year and do not meet the CGPA requirements), the department will consider individual waiver requests. Please email the CSC faculty advisor to set up an appointment to submit your waiver request. We will process waivers in May and in late August, during the POSt admission process.


All third year courses in computer science (CS) have a writing prerequisite, and all CS majors and specialists contain a half-credit writing requirement. The recommended course to satisfy this requirement is CSC290H5, students can also satisfy the writing requirement with any of CCT110H5, ENG100H5, ENG110Y5, HSC200H5, HSC300H5, LIN204H5, WRI203H5.

If a student wishes to substitute another course to satisfy the writing requirement, the student should  draft a formal letter naming the replacement course and describing how it meets the desired outcome of familiarity with technical and professional modes of communication. Submit this letter to the Faculty Advisor. If your petition is approved, then the course you propose will be accepted in lieu of CSC290H5.


Students not enrolled in a computer science major or specialist program are restricted to completing a maximum of three 3rd or 4th year computer science courses. Every term, the department removes students from courses who exceed this limit to give all students a fair chance to enroll in the upper year courses they are entitled to take.

We typically remove non-program students during the first week of the academic term. After the removals are complete, all students are permitted to enroll in as many CS courses as they would like, as long as there is space in the course. We believe this strikes a fair balance between (a) providing access to courses for students in the specialist and major, (b) providing access to courses for students in the minor who have not yet completed three upper year courses, and (c) providing access to extra courses for students in the minor.