← CS Classes

CS 3110 — Functional Programming and Data Structures

General Information

Advanced programming course emphasizing functional programming, data structures, and software design. Topics include recursive and higher-order programming, algebraic data types and pattern matching, modularity and abstraction mechanisms, models of program evaluation, and type systems. Covers techniques for specifying, testing, and reasoning about program correctness, and for analyzing the performance and design tradeoffs of data structures and programs.

Full Cornell course description (FA26)

Credits: 4

Prerequisites and Enrollment

Prerequisites: CS 2110 or equivalent.

Corequisites: or prerequisites: CS 2800.

Recorded Offerings

SemesterListed instructorsCourse details
Fall 2026Michael ClarksonRoster / syllabus
Spring 2026Ayaka Yorihiro, Dexter KozenRoster / syllabus

Workload and General Advice

Student contributions have not been added yet. Consult the offering’s syllabus for assignments and assessment details.

Student Experiences

No testimonials yet.

Course information checked against Cornell’s Spring and Fall 2026 rosters on September 18, 2026. The listed semesters are verified examples, not a complete offering history.