COS 595 - Schedule and Readings


Schedule

Date Topic Reading
9/11 Introduction Parnas 72, Hanson 97
9/16 ML Ullman 94
9/18 ML modules Tofte 96
9/23 Modula-3 partial revelation Cardelli 91, Freeman 95
9/25 Modula-3 IO Streams (lecture by Norman Ramsey) Brown 91
9/30 IO streams using ML functors Appel 94
10/2 Higher-order functors MacQueen 94
10/7 Translucent sums [L. Bauer] Lillibridge 97
10/9 Java [H. Zhao] Arnold 96
10/14 IO streams in Java [J. Hainsworth] Gosling 96
10/16 Hierarchical modularity (lecture by Matthias Blume) Blume 97b
10/21 Modules in O-O languages (lecture by Kim Bruce) Bruce 97
10/23 Theory of linking [A. Ahmed] Cardelli 97
Midterm break
11/4 What makes security hard (lecture by Ed Felten)
11/6 Software fault isolation [Y. Shuf] Wahbe 93
11/11 SPIN [D. Balfanz] Bershad 95
11/13 Static typing, dynamic linking Dean 97
11/18 Extensible Security Architectures for Java [D. Wallach] Wallach 97
11/20 Examples of applications that need security
11/25 Interfaces, tools, and access control for secure programming
12/2 Cross-module optimization (lecture by Matthias Blume) Blume 97a
12/4 Classes, objects and data abstraction (lecture by Kathleen Fisher) Fisher 97 
12/9 Proof-carrying code  S. Kumar  Necula 97
12/11 OOP in the real world [B. Dressner] Jacobson 87

Back to COS 595 front page | Readings