Skip to content

Latest commit

 

History

History
85 lines (55 loc) · 3.25 KB

schedule.md

File metadata and controls

85 lines (55 loc) · 3.25 KB
title layout
Schedule
page

Examples for the class are stored in this github repository

Week 0: Introduction, Racket, and Metacircular Interpreters

  • M/W: Racket intro

Week 2: Metacircular interpers (contd), Lambda Calculus

  • Monday (labor day): No class
  • Wednesday: Metacircular Interpreters
    • Slides in [Keynote]({{'/assets/slides/metacircular.key' | absolute_url}}) and [PDF]({{'/assets/slides/metacircular.pdf' | absolute_url}}).
  • Homework 0 handed out

Week 3: Lambda calculus, Church Encoding

  • Monday: Metacircular interpreters contd.
  • Wednesday: Lambda Calculus, Church Encoding
    • Slides in [Keynote]({{'/assets/slides/lambda-calculus-church-encoding.key' | absolute_url}}) and [PDF]({{'/assets/slides/lambda-calculus-church-encoding.pdf' | absolute_url}}).

Week 4: Church Encoding and Continuations

  • Monday: Implementing the Church-encoder in class
  • Wednesday: Continuations, call/cc, and composable continuations
    • Slides in [Keynote]({{'/assets/slides/continuations.key' | absolute_url}}) and [PDF]({{'/assets/slides/continuations.pdf' | absolute_url}}).

Week 5: Abstract machines (CEK and CESK) and Continuations

  • Monday: The CEK machine
  • Wednesday: CEK, continued..

Week 6: CESK machine and Intro to Abstract Interpretation

  • Monday: Abstract Interpretation theory and Galois Connections
    • Slides in [Keynote]({{'/assets/slides/anf-cesk.key' | absolute_url}}) and [PDF]({{'/assets/slides/anf-cesk.pdf' | absolute_url}}).
  • Wednesday: Collecting Semantics and example abstract interpreter
  • Assigned reading: "Abstracting Abstract Machines."

Week 7: Imperative Languages and Traditional Dataflow Analysis

Week 8: Understanding 0CFA and constraint-based analyses

  • Continued from last week, Kris travelling?

Week 9: Analysis Precision, Polyvariance

  • Monday: Understanding 0CFA
    • Slides in [Keynote]({{'/assets/slides/understanding-0cfa.key' | absolute_url}}) and [PDF]({{'/assets/slides/understanding-0cfa.pdf' | absolute_url}}).
  • Wednesday: Constraint and Datalog-based Analyses
    • Slides in [Keynote]({{'/assets/slides/0cfa-datalog.key' | absolute_url}}) and [PDF]({{'/assets/slides/0cfa-datalog.pdf' | absolute_url}}).

Week 10: Object-Orientation and Object Sensitivity

Week 11: Reachability-based analysis

  • Monday / Wednesday:
  • Graph Reachability and IFDS
  • Assigned reading: Precise Interprocedural Dataflow Analysis via Graph Reachability

Week 12: Call/return matching, Pushdown precision

Week 13: Constraint-Based Analyses

  • TBD

Week 14: Symbolic Execution

  • TBD