CSC 4980/6980, Functional Programming - Fall 2026
Course Details
Instructor: Raj Sunderraman; Room 629, 1 Park Place; raj@gsu.eduTime: Monday/Wednesday 12.30 pm to 2.15 pm
Location: Classroom South 306
Office hours: Monday/Wednesday 2.30 pm to 4.00 pm. If you cannot make it at any of these times, please email.
Syllabus
Handin Instructions
Functional Rhyme
Exam 1 Practice Problems
III. Haskell
Simply Typed Lambda Calculus, Polymorphic Lambda Calculus, Type Systems,
Notes
Slides (Ch. 1-8, Hutton book),
Hutton book
Haskell Install
Homework Assignment 3 Due: October 9th, Friday
Project 1 (Binary Relations) Due: November 1st, Sunday
II. Lambda Calculus
Lambda Calculus Slides ||
Lambda Calculus: 6 videos
Booleans, Church Numerals, Data Structures, Y-Combinator in Lambda Calculus
Command Line Lambda Calculus Interpreter with "named" expressions ||
FormalViz GitHub ||
Paper describing these software
Lambda Calculus (notes from University of Wisconsin)
Lambda Calculus, Pure Functional Programming in Python
Booleans, Church Numerals, Data Structures, Y-Combinator in PythonPure Functional Programming in Python, Code from paper
Other Models Of Computation
RAM ModelTuring Machine
Homework Assignment 2 Due: September 13th, Sunday
Homework Assignment 1 Due: September 27th, Sunday
I. Python Lexer and Parser Generator (ply package)
Python PLY Notes ||
Lecture Videos: 8 videos ||
PLY Example Code