CS 711 : Advanced Programming Languages Seminar

This semester the programming languages seminar will look at papers that lie on the interface between languages, systems, and security. The goal is to examine the interesting technical problems that prevent programming language technologies from making future systems simpler, more secure, and easier to develop. Of particular interest will be object-oriented languages and systems and their interactions with security, distributed computation, persistence, reflection, and linking. In the security area, we will also follow up last semester's 711 seminar by looking more closely at work on information-flow security.

Schedule and Reading List

Sept 2 Course Introduction (slides) Andrew Myers
Sept 4 Slides on noninterference and nondeterminism
Sabelfeld, A., Myers, A.C., Language-based information-flow security
Roscoe, A.W., CSP and determinism in security modeling (esp. Sec 8)
Andrew Myers
Sept 9 Banerjee, A., Naumann, D., Secure information flow and pointer confinement in a Java-like language (CSFW'02) Lantian Zheng
Sept 11 Sabelfeld, A., Sands, D., Probabilistic noninterference for multithreaded programs (CSFW'00) Andrei Sabelfeld
Sept 16 Zdancewic, S., Myers, A.C., Secure information flow via linear continuations (HOSC) Andrew Myers
Sept 18 Pottier, F., Simonet, S, Information flow inference for ML (POPL'02) Michael Clarkson
Sept 23 Zdancewic, S., Myers, A.C., Robust declassification (CSFW'01) Andrew Myers
Oct 21 Simonet, V. Fine-grained information flow analysis for a λ-calculus with sum types (CSFW'02) Matthew Fluet
Persistence and Distribution
Sept 25 Atkinson, M., Buneman, P., Types and persistence in database programming languages (Computing Surveys, 1987) Andrew Myers
Sept 30 Moss, J.E.B., Working with Persistent Objects: To Swizzle or Not to Swizzle Nate Nystrom
Oct 7 Jul, E., Levy, H., Hutchinson, N., Black, A., Fine-Grained Mobility in the Emerald System (TOCS 1988) Yanling Wang
Oct 9 Liskov, B., Castro, M., Shrira, L., Adya, A., Providing Persistent Objects in Distributed Systems (ECOOP'99) Andrew Myers
Oct 16 Liblit, B., Aiken, A., Type Systems for Distributed Data Structures (POPL'00) James Cheney
Oct 21 (See above)
Oct 23 (No meeting)
Extensibility and Reuse
 Oct 28Flatt, M., Krishamurthi, S., Felleisen, M., Classes and mixins (POPL'98)Yanling Wang
 Oct 30Millstein, T., Bleckner, C., Chambers, C., Modular typechecking for hierarchically extensible datatypes and functions (ICFP'02)Steve Chong
Nov 4Smaragdakis, Y., Batory, D., Implementing layered designs with mixin layers (ECOOP'98)Michael Clarkson
Nov 6 Flatt, M., Felleisen, M., Units: cool modules for HOT languages (PLDI'98)Dan Grossman
Nov 11Zenger, M., Type-safe prototype-based component evolution (ECOOP'02)Nate Nystrom
Nov 13Dreyer, D., Crary, K., Harper, R., A type system for higher-order modules (POPL'03)Matthew Fluet
Transactions and Consistency
Nov 18Herlihy, M., Wing, J., Linearizability: a correctness condition for concurrent cbjects (TOPLAS 1990)Andrew Myers
Nov 20Haines, N., Kindred, D., Morrisett, J.G., Nettles, S.M., Wing, J.M., Composing first-class transactions (TOPLAS 1994)Lantian Zheng
Nov 25Garcia-Molina, H., Salem, K., SAGASNate Nystrom
Dec 2Kemarrec, A., Rowstron, A., Shapiro, M., Druschel, P. The IceCube approach to the reconciliation of divergent replicas (PODC 2001)James Cheney
Dec 4Wrap-upAndrew Myers