Last modified: 2023-01-26
This is a course page of
David Casperson
Associate Professor
Computer Science
University of Northern British Columbia

CPSC-370 Lecture Planning — Fall 2017

This page is an attempt to engage in CPSC 370 lecture Planning.

September 2017
SuMoTuWeThFrSa
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
October 2017
SuMoTuWeThFrSa
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31
November 2017
SuMoTuWeThFrSa
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 1

Lecture 1 (Wed Sep 06)

  • Motivatons
  • Basic Racket

Lecture 2 (Fri Sep 08)

  • Anonymous functions and λ-expressions
  • Defining functions in Scheme (Racket)

Lecture 3 (Mon Sep 11)

  • Syntactic sugar; First class things
  • Pairs and lists in Scheme
  •  

Lecture 4 (Mon Sep 11)

  • Programming practice: Scheme
    • The Collatz function
    • nth

Lecture 5 (Fri Sep 15)

  • Relations
  • Functions and Partial functions
  • Multi-argument functions

Lecture 6 (Mon Sep 18)

  • Anonymous functions
  • Counting functions
  • Currying

Lecture 7 (Mon Sep 18)

  • Programming practice: Scheme
    • Collatz sequences
    • the drop function

Lecture 9 (Mon Sep 25)

  • Introductory Haskell
  •  
  •  

Lecture 10 (Mon Sep 25)

  • Programming constructs in Haskell
  • Local bindings in Scheme
  •  

Lecture 11 (Fri Sep 29)

  • Programming practice
  •  
  •  

Lecture 12 (Mon Oct 02)

  • The Maybe type.
  • Local variables.
  • Various forms of let in Scheme.

Lecture 13 (Mon Oct 02)

  • Static versus dynamic typing
  • Hindley-Milner typing
  •  

Lecture 14 (Fri Oct 06)

  • Strict versus lazy languages
  • Midterm review

Thanksgiving Monday (Mon Oct 09)

blah blah blah


Midterm I (Wed Oct 11)


Lecture 17 (Fri Oct 13)

  • Midterm 1 return and review

Lecture 18 (Mon Oct 16)

  • Naïve laziness
  • thunks
  • Using laziness in Java

Lecture 19 (Mon Oct 16)

  • Using the IO monad
  • Solving the demipriest problem

Lecture 20 (Fri Oct 20)

  • Classes and instances in Haskell

Lecture 21 (Mon Oct 23)

  • Types and datatypes in Haskell
  • Environments
  • Static versus dynamic binding
  • Racket parameters

Lecture 22 (Mon Oct 23)

  • tail recursion
  • accumulators
  •  

Lecture 23 (Fri Oct 27)

  •  
  •  
  •  

Lecture 24 (Mon Oct 30)

  •  
  •  
  •  

Lecture 25 (Mon Oct 30)

  •  
  •  
  •  

Lecture 26 (Fri Nov 03)

  •  
  •  
  •  

Lecture 27 (Mon Nov 06)

  •  
  •  
  •  

Lecture 28 (Mon Nov 06)

  •  
  •  
  •  

Lecture 29 (Fri Nov 10)

  •  
  •  
  •  

University Closure (Mon Nov 13)

blah blah blah


Midterm II (Wed Nov 15)

blah blah blah


Lecture 32 (Fri Nov 17)

  •  
  •  
  •  

Lecture 33 (Mon Nov 20)

  •  
  •  
  •  

Lecture 34 (Mon Nov 20)

  •  
  •  
  •  

Lecture 35 (Fri Nov 24)

  •  
  •  
  •  

Lecture 36 (Mon Nov 27)

  •  
  •  
  •  

Lecture 37 (Mon Nov 27)

  •  
  •  
  •  

Lecture 38 (Fri Dec 01)

  •  
  •  
  •  

Home page Semesters Site Map
go back Fall 2017 go forward
2024-12 other links

CPSC 370 [Other years]
References
Lecture Planning
Homework
Dates
Policies
Resources
David’s Schedule

UNBC Undergraduate Calendar

fall-2024