**Example Syllabus**

This syllabus comes from our experience teaching courses from SEwPR at Northeastern University, Northwestern University and the University of Utah. The course is aimed at beginning graduate students and advanced undergraduates and consists of eight weeks of readings from SEwPR followed by presentations of Redex models of research papers and board games that the students produced for the rest of the semester (or quarter).

Each week below maps into three one-hour meetings. Also note that the exercises in the third week are best done interactively in the classroom to demonstrate how coding up a Redex model goes.

Week 1 | ||

Semantics via Syntax | Chapter 1 | |

Analyzing Syntactic Semantics ++ | Chapter 2 | |

The Lambda Calculus | Chapter 3 | |

Week 2 | ||

ISWIM: Syntax, Semantics, Pragmatics | Sections 4.1 — 4.5 | |

ISWIM: Consistency (CR) | Sections 4.5 — 4.7 | |

ISWIM: The Machine (SR) | Sections 5.1 — 5.3 | |

Week 3 | ||

Redex: Overview | Chapter 11 | |

Redex: Exercise 4.10 (encode ISWIM/n calculus) | ||

Redex: Exercise 5.5 (encode ISWIM/n std red) | ||

Week 4 | ||

Machine: CC & SCC | Sections 6.1 — 6.2 | |

Machine: CK | Section 6.3 | |

Machine: CEK | Section 6.4 | |

Week 5 | ||

Tail Calls and More Space Savings | Chapter 7 | |

ISWIM: Logic & Model | Sections 5.3 — 5.4 | |

Control: Simple | Sections 8.1 — 8.2 | |

Week 6 | ||

Control: Full | Sections 8.3 — 8.4 | |

Redex: Layered Development | Chapter 13 | |

Redex: Testing | Chapter 14 | |

Week 7 | ||

State: State ISWIM | Sections 9.1 — 9.3 | |

State: Machine & GC | Sections 9.4 — 9.6 | |

Types: Typed Iswim | Chapter 10 | |

Week 8 | ||

Redex: Debugging | Chapter 15 | |

Redex: Case Study 1 | Chapter 16 | |

Redex: Case Study 2 | Chapter 17 | |

Week 9 and beyond | ||

Student presentations of their own Redex models |