everything.study
COMP 3007

Programming Paradigms

0.5 credit · Undergraduate

An introduction to alternative programming paradigms such as functional, constraint-based, concurrent, and logic programming.

2026

Topics

  • describe and contrast the different programming paradigms
  • use structural induction to prove (rather than test) the correctness of a program
  • use Haskell for writing programs in the functional programming paradigm
  • use Prolog for writing programs in the logical programming paradigm
  • explain equational reasoning, lazy evaluation, referential transparency
  • demonstrate primitive recursion, general recursion, and tail-call optimization techniques
  • demonstrate pattern matching and the use first-class objects and higher-order functions
  • COMP 3007 A/B/C (Winter 2026) − "Programming Paradigms"

Readings

  • One (1) required textbook: Lipovaca, M. (2011). Learn You a Haskell for Great Good! (n.b., this textbook is available to read for free at http://learnyouahaskell.com/chapters)

Prerequisites & course information

Precludes additional credit for SYSC 3101 . Prerequisite(s): COMP 1805 with a minimum grade of C- , COMP 2401 with a minimum grade of C- , COMP 2402 , ( COMP 2404 or SYSC 3010 or SYSC 3110 ) and ( COMP 2406 or SYSC 4504 ). Lectures and tutorials three to four and a half hours a week.

Sources