CMSC838B

Advanced Topics in Programming Languages; Differentiable Programming

Prerequisite: Minimum grade of C- in CMSC330 and CMSC351 This course is an introduction to differentiable Programming, a new programming paradigm in which a numerical program can be differentiated through automatic differentiation, allowing gradient-based optimization of parameters in the program. It has broad applications in Computer Graphics, Computer Vision, Deep Learning, Quantum Computing, System Control, and many more. The course assumes a good working knowledge of linear algebra and differentiation.

Sister Courses: CMSC838C, CMSC838D, CMSC838E, CMSC838F, CMSC838G, CMSC838J, CMSC838K, CMSC838L, CMSC838M, CMSC838N, CMSC838X

Fall 2025

1 review
Average rating: 5.00

Past Semesters

1 review
Average rating: 5.00

1 review
Average rating: 5.00

During the Spring 2020 and Spring 2021 semesters, students could choose to take some of their courses pass-fail mid-semester which skews grade data aggregated across multiple semesters.

Average GPA of 3.81 between 31 students*

CMSC838B Grade Distribution+-05101520253035404550% of studentsABCDFWother
A-: 19.35%
A: 25.81%
A+: 3.23%
B+: 6.45%
other: 45.16%
* "W"s are considered to be 0.0 quality points. "Other" grades are not factored into GPA calculation. Grade data not guaranteed to be correct.