CSc 372 Comparative Programming Languages - Schedule

Week 1

Introduction

Lecture #1, Mon, Aug 23: Administrivia, Introduction
Lecture #2, Wed, Aug 25: Introduction to Functional Programming[1]

Scheme

Lecture #3, Fri, Aug 27: Scheme [1]: Introduction to Scheme

Week 2
Lecture #4, Mon, Aug 30: Scheme [2]: Definitions
Lecture #5, Wed, Sep 1: Scheme [3]: List processing
Lecture #6, Fri, Sep 3: Scheme [4]: Shallow recursion

Week 3
Lecture #7, Wed, Sep 8: Scheme [5]: Deep recursion
Lecture #8, Fri, Sep 10: Scheme [6]: Recursive functions

Week 4
Lecture #9, Mon, Sep 13: Scheme [7]: Examples
Lecture #10, Wed, Sep 15: Scheme [8]: Higher Order Functions

Prolog

Lecture #11, Fri, Sep 17: Prolog [1]: Introduction to Prolog

Week 5
Lecture #12, Mon, Sep 20: Prolog [2]: Prolog Basics
Lecture #13, Wed, Sep 22: Prolog [3]: Prolog Basics
Prolog Basics
Lecture #14, Fri, Sep 24: Scheme [9]: Scheme test

Week 6
Lecture #15, Mon, Sep 27: Prolog [4]: Prolog Structures
Lecture #16, Wed, Sep 29: Prolog [5]: Prolog Lists
Lecture #17, Fri, Oct 1: Prolog [6]: Prolog lists

Week 7
Lecture #18, Mon, Oct 4: Prolog [7]: The Prolog Database
Lecture #19, Wed, Oct 6: Prolog [8]: Programming techniques
Lecture #20, Fri, Oct 8: Prolog [9]: Prolog Grammar Rules

Week 8
Lecture #21, Mon, Oct 11: Prolog [10]: Prolog Grammar Rules
Lecture #22, Wed, Oct 13: Prolog [11]: Large Prolog Example
Lecture #23, Fri, Oct 15: Prolog [12]: Second-Order Programming

Week 9
Lecture #24, Mon, Oct 18: Prolog [13]: Large Prolog Example

Haskell

Lecture #25, Wed, Oct 20: Haskell [1]: Introduction to Haskell
Lecture #26, Fri, Oct 22: Haskell [2]: Introduction to Haskell

Week 10
Lecture #27, Mon, Oct 25: Prolog [14]: Some title
Lecture #28, Wed, Oct 27: Haskell [3]: Some title
Lecture #29, Fri, Oct 29: Prolog [15]: Prolog test

Week 11
Lecture #30, Mon, Nov 1: Haskell [4]: Function definitions
Lecture #31, Wed, Nov 3: Haskell [5]: Patterns
Lecture #32, Fri, Nov 5: Haskell [6]: Recursive functions

Week 12
Lecture #33, Mon, Nov 8: Haskell [7]: Recursive functions
Lecture #34, Wed, Nov 10: Haskell [8]: Curried Functions
Lecture #35, Fri, Nov 12: Haskell [9]: Higher-Order Functions

Week 13
Lecture #36, Mon, Nov 15: Haskell [10]: Function composition
Lecture #37, Wed, Nov 17: Haskell [10]: Data types, lazy evaluation

Icon

Lecture #38, Fri, Nov 19: Icon [1]: Introduction to Icon

Week 14
Lecture #39, Mon, Nov 22: Icon [2]: Some title
Lecture #40, Wed, Nov 24: Icon [3]: Some title

Week 15
Lecture #41, Mon, Nov 29: Haskell [11]: Haskell test
Lecture #42, Wed, Dec 1: Icon [4]: Some title
Lecture #43, Fri, Dec 3: Icon [5]: Some title

Week 16
Lecture #44, Mon, Dec 6: Icon [6]: Some title
Lecture #45, Wed, Dec 8: Icon [7]: Some title