Due: Friday, May 2 by 5pm PT
This homework covers ASTs, interpreters, transition systems, and a little bit of Imp. Transition systems, the focus of Week 04, are a mathematical framework that we can use to study potentially infinite computations, such as while loops. (Recall that all our interpreters from Week 03 had to "obviously" terminate in order for Coq to accept them. So interpreters can't handle while loops.)