PL Reading Group

Fall 2019 — Friday, 3:30pm — Gates 287

Subscribe to the calendar: iCal or Google Calendar.

Each quarter we will explore 2-3 programming language and software engineering topics in depth. For each topic, we will read some seminal papers and some more recent papers. You can join the cse590p mailing list for weekly updates. Some paper links may point into the ACM Digital Library or the Springer online collection. Using a UW IP address, or the UW libraries off-campus access, should provide access.

Date Who What
Sep 27



Oct 4


A Taste of Rewrite Systems

Term Rewriting & E-Graphs 1 - Czar: Max

Oct 11


Graph Transformation for Specification and Programming

  • Term Rewriting & E-Graphs 2 - Czar: Max
  • Reading: Intro, Conclusion, Section 2 (esp. 2.2 and 2.4), Section 3.1, optionally the rest of 3 and 4.
Oct 18


Simplify: A Theorem Prover for Program Checking

  • Term Rewriting & E-Graphs 3 - Czar: Max
  • Intro, Section 4.2 “The E-Graph Module” (p. 22 in PDF), and Section 7 “The E-Graph in detail” (p. 56)
Oct 25


Equality Saturation: a New Approach to Optimization

  • Term Rewriting & E-Graphs 4 - Czar: Max
  • Reading: at least Sections 1 and 2.
Nov 1


Answer Set Programming at a Glance

Nov 8


Applications of ASP

Nov 15


ASP, the Frame Problem and Plan Generation

We’ll continue on with the frame problem from last week’s paper (the second half of the KR portion). Following this we will look into Lifschitz’ paper on ASP and Plan Generation.

Nov 22

PLDI Deadline

No meeting

Nov 29


No meeting

Dec 6

Nick Walker

ASP application: Open-World Reasoning for Service Robots

Useful tutorial for the paper:

Reading Papers

It may be useful to skim various advice on how to constructively evaluate research papers. Note that these principles also apply to reading group discussions! When considering motivation in particular, the Heilmeier Catechism is often a useful starting point.


Feel free to swap papers and dates or add yourself as a co-presenter to a topic.

Some Options for Fall