May 06, 2026  
General Catalog 2026-2027 
    
General Catalog 2026-2027
Add to Portfolio (opens a new window)

CSCI 215 - Advanced Functional Programming




Prerequisite: CSCI 115  and CSCI 117  with a C grade or better, or permission of instructor
This course provides an advanced study of functional programming principles using the Haskell programming language. Moving beyond basic syntax, the course focuses on three pillars: abstraction (using type classes, monads, and monad transformers to factor out commonality), verification (using equational reasoning and property-based testing to prove correctness), and efficiency (analyzing and implementing purely functional data structures). Topics include the Monad hierarchy, lazy evaluation complexity, persistent data structures, concurrent programming models, and software transactional memory.

Units: 3
Course Typically Offered: Fall



Add to Portfolio (opens a new window)