Course Infrastructure -- Course Syllabus ♦ Suggested Process of Engagement ♦ Special Covid Related Note ♦ Csc344 CSA Note ♦ Csc344 TA Note
Exam Related Materials -- Notes on Exam 1 ♦ Practice Exam 1 ♦ Notes on Exam 2 ♦ Exam 2 Structure ♦ Final Exam Structure and Notes
Miscellaneous Assignments -- Web Work Site Assignment ♦ BNF Assignment ♦ Memory Management / Perspectives on Rust and Template
Racket Assignments -- Racket Programming Assignment #1: First Interactions and Model solution document ♦ Racket Programming Assignment #2: Racket Functions and Recursion ♦ Racket Programming Assignment #3: Lambda and Basic Lisp ♦ Racket Programming Assignment #4: Recursive List Processing and Higher Order Functions
Prolog Assignments -- Prolog Programming Assignment #1: Various Computations and Pokemon KB ♦ Prolog Programming Assignment #2: State Space Problem Solving
Haskell Assignment -- Haskell Programming Assignment: Various Computations and ditdah.hs
Miscellaneous Lessons -- On the Design of the Course ♦ BNF
Racket Lessons -- Introduction to Racket and Dr Racket ♦ Function Definition in Racket ♦ Recursive Functions in Racket ♦ Lisp ♦ Racket Flavored Historical Lisp ♦ Basic Lisp Programming ♦ Recursive List Processing ♦ Higher Order Functions
Prolog Lessons -- Introduction to Prolog ♦ About Prolog ♦ Map Coloring ♦ Free Floating Shapes World ♦ List Processing ♦ The Maze ♦ State Space Problem Solving
Haskell Lessons -- Introduction to Haskell ♦ Playing with Lists / Pattern Matching / Definitions ♦ List Comprehensions ♦ Higher Order Functions
Solutions to Selected Exercises -- BNF grammar for QN (Quaternary Numbers) ♦ BNF grammar for SL (Sign Language)