The purpose of the project is summarized on the
general syllabus page.
Stage 1 Pick a topic that you and your partner
consider interesting (in the context of this course). A list of
suggested topics appears below. It is acceptable if two pairs grab one
and the same paper. If you would like to be more ambitious---recommended
to PL students---look at the conferences or journals discussed in
class. Read the abstracts and motivational sections.
Get approval by 09 October 2012 for your chosen
topic. If your topic is from the list below, a simple email from one of
you to me, ccing your partner suffices. Otherwise, submit a two-paragraph
email: one summarizing the topic in your words, and a second one
explaining why you wish to study this topic.
Stage 2 A first reading of a technically
complex paper should leave you with a shallow understanding and a desire
to understand certain aspects in more depth. The best way to express this
desire is to articulate your understanding and to phrase questions in
this context. These questions tend to tell you which "tools"
(mathematical techniques, implementation, measurements, etc) you will
need to use to find answers.
Write up a one-page memo in journal-paper style that (1) summarizes your
current understanding of the paper, (2) states which aspects of the paper
you would like to understand in depth, and (3) explains which tools (Redex
and otherwise) you wish to use to model the paper's insights so that you
gain the desired insight. Researchers tend to think of this memo as a
proposal.
The PDFed proposal memo is due 23 October 2012.
Stage 3 Just do it! There is nothing like
working on your chosen topic. Experience the feeling of understanding
what the author really meant; what the author could have done. --
Do not hesitate to consult with me if you're stuck!
Stage 4 Report on your experience in a two-page
"result" memo. The revised memo should consist of four parts: (1) the
fixed-up summary from the "proposal" memo; (2) a
revised and concrete set of questions that you tackled; (3) a description
of the approach used to answer them; and (4) your answers (abstractly,
because you have a limited amount of space). Do not write an essay on
what you did in the past two weeks but imagine yourself writing a final
report for a scientific grant that you obtained from a funding agency.
To format the paper, use (1) an 11-point font, (2) 1.5in margins all
around, (3) a header that specifies the paper title and the authors of the
memo, (4) no section or subsection headings. If you wish to label a
passage, use the so-called paragraph style, which boldfaces the initial
phrase of a paragraph.
The revised memo is due, in PDF form, on 20 November
2012 before class. Email it as an attachment together with one
Redex file (if needed). Both file names should use the last names of the
partners, plus a suitable suffix (.pdf and .rkt).
Stage 5 Prepare a joint 40-minute whiteboard
lecture that describes (1) the paper's problem, including the motivation,
and background, (2) your questions, (3) the approach you used to answer
these questions, and (4) the insight you gained.
Divide the talk between the two partners but each partner should be
prepared to answer questions about the entire talk.
Grading Your "deliverables" are: (1) the
"proposal" memo, (2) the "report" memo, (3) the lecture; and (4) an
appendix that documents your work (usually a Redex model).
Your project grade consists of four different pieces:
- the initial formulation of a question concerning the topic;
- the description of your answer or attempts, i.e., the 'revised memo';
- the in-class lecture; and
- the Redex model in support of your answer.
Both memos are judged at two levels: the content and its English
(unit-level organization, style, grammar, typos). Similarly, the
lecture is about both content and oral communication skills of
technical matters. Finally, the Redex model must support the conclusion
and must show that you have understood the basic modeling techniques.
A note on writing or "less is more." Concise language is
superior to a lot of weasel words and paragraphs. The two limits (one and
two pages, respectively) are upper limits not lower
limits. -- Good technical writing focuses on the essence of a topic and
avoids emotional verbs (e.g., "believe") or judgmental adjectives (e.g.,
"wonderful"). -- Start a unit of writing with a 'thesis' and use the rest
of the unit with support of the thesis. -- Also, use active voice over
passive voice. Connect sentences by starting sentences with idea-words
near the ending of the preceding one; then introduce a new one. Doing so
is accepted American style of writing and technical writing. -- For a
short elegant book on writing, see Strunk and White's "Elements of Style"
(3rd edition).
The Topics
-
Ariola, Felleisen.
The Call-by-Need Lambda-Calculus. JFP 1996
acquired by Bowman and Kazemi Nafchi
-
Aditya, Arvind, Maessen, Augustsson, Nikhil
Semantics of pH: A parallel dialect of Haskell MIT CSG 377-1
acquired by Marquez and Muehlboeck
-
Clements, Felleisen.
A Tail-Recursive Semantics for Stack Inspections. ESOP 2003
acquired by Ma and Ramachandran plus Yao and Gu
-
Cousineau G., Curien P.-L., Mauny M. The categorical abstract machine. FPCA 1985 (LNCS 201)
acquired by Bass and Liu plus Koh and Delgir
-
Flanagan, Sabry, Duba, Felleisen.
The Essence of Compiling with Continuations.
PLDI 1993
acquired by Mates and Silkensen
-
Flanagan, Felleisen.
The Semantics of Future and Its Use in Program Optimizations.
POPL 1995
acquired by Garg and McGrath
-
Guha, Saftoiu, Krishnamurthi.
The Essence of JavaScript. ECOOP 2010
acquired by Yue Chen and Bochao Shen plus Chen and Unlu
-
Krishnamurthi, Findler, Graunke, Felleisen.
Modeling Web Interactions and Errors.
In: Goldin, Smolka, Wegner (editors).
Interactive Computations. 2006
acquired by Clarke-Lauer and Abhishek Samanta
-
Waddell, Sarkar, Dybvig.
Fixing letrec: A faithful yet efficient implementation of Scheme's recursive binding construct.
HOSC 2005
acquired by Claire Alvis