For each paper, you should read the paper, mark it up with comments, and then at the end of the paper, write three sentences: (1) one sentence that summarizes the paper (2) one sentence that summarizes the main limitation of the paper (3) one sentence that states possible directions for future work. You need to hand in your marked-up paper in class on the day the reading is due.
10/8: Trace-based Just-in-Time Type Specialization for Dynamic Languages
10/15: Superoptimizer -- A Look at the Smallest Program (optional: read the beginning of this post for a brief history of superoptimizers)
10/22: Stochastic Superoptimization
11/5: Classic Bug Reports , including some compiler ones. Don't print anything out! Just write down your insights on a piece of paper: what did you learn by reading these?
Optional: Worse is better (also, browse through here for a complete history and follow-ups)
11/12: The ant and the grasshopper: fast and accurate pointer analysis for millions of lines of code
Optional: Pointer Analysis: Haven’t We Solved This Problem Yet?