CS 15-212: Fundamental Structures of Computer Science II

Schedule

Note that this schedule is subject to change during the semester. Supplementary readings are from: Lawrence C. Paulson, ML for the Working Programmer, 2nd edition, Cambridge University Press, 1996. Notes include references to the on-line introduction Programming in Standard ML by Robert Harper.

Date Topic Supplementary Reading Notes Code
25 Aug Evaluation & Typing 2.1-2.6, 2.11-2.12, evaluation.ps Lecture 1 lecture01.sml
27 Aug Binding, Scope, Functions 2.14-2.16, 2.20-2.22 Lecture 2 lecture02.sml
1 Sep Recursion & Induction 6.1-6.3, induction.ps Lecture 3 lecture03.sml
3 Sep Datatypes & Patterns 2.7-2.8, 4.1-4.4 Lecture 4 lecture04.sml
8 Sep Tail Recursion, Structural Induction 3.1-3.6, 6.4-6.5, structural.ps Lecture 5 lecture05.sml
9 Sep Assignment 1 due Proofs Solution 1
10 Sep Data Structures 4.10-4.13, 7.1-7.6 Lecture 6 lecture06.sml
15 Sep Representation Invariants 4.14-4.16 Lecture 7 lecture07.sml
17 Sep Continuations continuations.ps Lecture 8 lecture08.sml
22 Sep Regular Expressions 5.1-5.11, regexp.ps Lecture 9 lecture09.sml
23 Sep Assignment 2 due Proofs Solution 2
24 Sep Exceptions 4.5-4.9 Lecture 10 lecture10.sml
29 Sep Review  
1 Oct Midterm (in class)  
6 Oct Modularity: Signatures and Functors 7.7-7.11 Lecture 12 lecture12.sml
7 Oct Assignment 3 due Solution 3
8 Oct Game Tree Search   Lecture 13 lecture13.sml
13 Oct References and State 8.1-8.3 mutable.ps Lecture 14 lecture14.sml
15 Oct Ephemeral Data Structures 8.4-8.6 Lecture 15 lecture15.sml
20 Oct Lazy Evaluation and Streams 5.12-5.16 Lecture 16 lecture16.sml
21 Oct Assignment 4 due Solution 4
22 Oct Streams, Laziness and Memoization 5.12-5.16 Lecture 17 lecture17.sml
27 Oct Lexical Analysis 9.1 Lecture 18 lecture18.sml
29 Oct Grammars and Parsing 9.2-9.3 parsing.ps Lecture 19 lecture19.sml
3 Nov Interpreters 9.10-9.13 Lecture 20 lecture20.sml
5 Nov Type Checking interpret.ps Lecture 21 lecture21.sml
10 Nov Assignment 5 due Solution 5
10-12 Nov Operational Semantics and Recursion interpret.ps Lecture 22 lecture22.sml
17-19 Nov Computability computability.ps Lecture 24 lecture24.sml
24 Nov Assignment 6 due  
24 Nov Systems Programming FoxNet Home Page    
26 Nov No Class (Thanksgiving)
1-3 Dec Concurrency   Lecture 27 lecture27.sml
8 Dec Final, 8:30-11:30am, Porter Hall 100  

[ home | schedule | language | assignments | handouts | recitations ]

Frank Pfenning
fp@cs