Basic types, values, and functions. Algebraic data types and pattern matching. Recursive algebraic types and implementation of data structures like lists and trees. Functional programming techniques like memoisation. Traversals and Zipper data structures. Lazy evaluations and some of its application. Type classes, Standard type classes like Eq, Show, and Ord. Functor: Applicative-Monad (FAM) abstraction and their laws, instances Basics of concurrent programming. Any other advanced topics based on time and interest.

Past Offerings

  • Offered in Jul-Dec, 2021 by Piyush
  • Offered in Jan-May, 2020 by Piyush
  • Offered in July-Dec, 2018 by Piyush

Course Metadata

Item Details
Course Title Functional Programming
Course Code CS5002
Course Credits 3-0-0-3
Course Category ERC
Proposing Faculty Piyush P. Kurur
Approved on Senate 5 of IIT Palakkad
Course status New