The topics included in the schedule is neither sound (some of the listed topics may not be covered) nor complete (some unlisted topic may be included). The interactive notebooks are accessed using docker container whose instructions are here.

Lectures Date Day Theme Notebook Comments
1 29/07/19 M Admin. Intro. Paradigms. [notebook] [pdf] Recommended exercise: Set up the course jupyter notebook.
2 30/07/19 T Functional Programming [notebook] [pdf]  
3 31/07/19 W Expressions [notebook] [pdf] Chapter 2 CS3110 text book
  02/08/19 F Tutorial: Git, Docker, Jupyter    
4 05/08/19 M Functions [notebook] [pdf] Chapter 2 in CS3110 text book
5 06/08/19 T Data Types [notebook] [pdf] Chapter 3 in CS3110 text book
6 07/08/19 W Pattern Matching [notebook] [pdf] Chapter 3 in CS3110 text book
  09/08/19 F Tutorial: Git, Docker, Jupyter    
7 13/08/19 T Higher Order Programming [notebook] [pdf] Chapter 4 in CS3110 text book
8 14/08/19 W Lambda Calculus: Syntax [notebook] [pdf] TAPL Chap. 5, Peter Selinger’s lecture notes on lambda calculus Chap. 2
9 16/08/19 F Lambda Calculus: Semantics [notebook] [pdf] TAPL Chap. 5, Peter Selinger’s lecture notes on lambda calculus Chap. 2
10 19/08/19 M Lambda Calculus: Review   Assignment 1 due
11 20/08/19 T Lambda Calculus: Encodings [notebook] [pdf] TAPL Chap. 5, Peter Selinger’s lecture notes on lambda calculus Chap. 3
12 26/08/19 M Lambda Calculus: Encodings [notebook] [pdf] TAPL Chap. 5, Peter Selinger’s lecture notes on lambda calculus Chap. 3
13 27/08/19 T Lambda Calculus    
14 28/08/19 W Lambda Calculus    
15 03/09/19 T Lambda Calculus   Assignment 2 due
  04/09/19 W Quiz 1    
16 06/09/19 F OCaml    
17 09/09/19 M OCaml    
18 13/09/19 F OCaml   Tuesday Timetable
19 16/09/19 M OCaml    
20 17/09/19 T OCaml    
21 18/09/19 W OCaml    
22 23/09/19 M OCaml   Assignment 3 due
23 24/09/19 T OCaml    
24 25/09/19 W OCaml    
25 30/09/19 M Logic Programming    
26 01/10/19 T Logic Programming    
27 04/10/19 F Logic Programming    
28 07/10/19 M Logic Programming    
29 09/10/19 W Logic Programming   Assignment 4 due
30 14/10/19 M Logic Programming    
31 15/10/19 T Logic Programming    
32 16/10/19 W Quiz 2    
33 18/10/19 F Logic Programming    
34 21/10/19 M Logic Programming    
35 22/10/19 T Logic Programming    
36 23/10/19 W Logic Programming    
  25/10/19 F     Assignment 5 due
37 28/10/19 M Logic Programming    
38 29/10/19 T Logic Programming    
39 30/10/19 W Concurrent Programming    
40 04/11/19 M Concurrent Programming    
41 05/11/19 T Concurrent Programming    
42 06/11/19 W Concurrent Programming    
  08/11/19 F     Assignment 6 due
43 11/11/19 M Concurrent Programming    
44 13/11/19 W Concurrent Programming    
  19/11/19 T End Sem