oh, no, the dog ate my work

This page lists the weekly assignments. Your submissions will be evaluated
  • for correctness, via "test fests." That is, we will run your test harnesses on the instructor’s and your peers’ tests.

  • for systematic design, via code inspections. That is, we will read select pieces of your solutions to the programming tasks and inspect them for the design standards taught in Fundamentals I and II.

Late Policy I will present the solutions to some of the assignments right after they are due. Some others will build atop previous assignments. Hence all assignments must be turned in on time.

    JSON: Simplicity and Complexity

    1 — JSON, Design

    2 — Static Distance, Simple Interpretation

    3 — Abstract Syntax, Compilation

    4 — Interpreting Functions

    5 — Simple Mutable Objects

    6 — Type Checking

    7 — Type Sound Interpretation

    8 — Model vs Reality

    9 — CPS

    10 — Control

    11 — CESK

    12 — Garbage Collection