Advanced Topics
Select a topic from the following list and email me by
Sunday Feb 5th:
- ML Type Inference:  ATTAPL Ch 10 (or suggest
alternative reading on Hindley-Milner type inference)
- Linear and Substructural Type Systems:  ATTAPL Ch 1
- (*) Separation Logic:  BI as an Assertion
Language for Mutable Data Structures, Ishtiaq and O'Hearn,
POPL 2001 -- Most Influential Paper POPL'01
- System F-omega and F-omega with subtyping:  TAPL Ch
30 and 31
- Dependent Types:  ATTAPL Ch 2 (or suggest alternative reading)
- Types for Low-Level Languages:  From System F to
Typed Assembly Language, Morrisett et al.,
ACM TOPLAS 1999 -- Most Influential Paper POPL'98
- Type-and-Effect Systems; with some discussion of
either Region-Based Memory Management or Marriage of Effects and
Monads:  ATTAPL Ch 3; Marriage
of Effects and Monads, Wadler and Theimann, ACM ToCL 2003
- (*) Module Systems:  Ch 1 of Dreyer's dissertation;
F-ing
Modules, Rossberg et al., TLDI 2010
- (*) Object Encodings (i.e., translation from OO languages to
variants of System F-omega):  Comparing Object
Encodings, Bruce et al., Info. and Comp. 155(1/2):108-133,
1999; Type-Preserving
Compilation of Featherweight Java, League et al., ACM TOPLAS 2002
Process
- By Feb 5th, send me a first and second choice of topic.
I will use the second choice to resolve any conflicts that arise.
- The above list contains 9 topics but we have
only 8 lecture slots. If you are interested in exploring one of the
topics marked with (*) for your research theme later in the
semester, please let me know by Feb 5th so we can skip covering
it as an advanced topic.
- The topics listed above will be covered in roughly the
order in which they appear. To give you a rough sense of the
schedule, the first advanced-topic presentation will be on Feb
29th and the last on March 23rd.
- The presenter may have to read more than just the
core reading listed with each topic above. Discuss additional
reading with me.
- By Feb 10th, select a partner to work with. You will
help each other prepare for your presentations, practice the
presentations with each other, and proof-read and provide
comments on each other's lecture notes.
- Email me your lecture notes (PDF) at least 5 days before
your lecture. At this point also make an appointment to meet
with me a few days before your presentation to check in with
me.