- Document the semantics of the DSL! - Clean up and factor the codegen properly. - Look into whether optimizations are possible: - More in-depth fallibility analysis (avoid failure edges where possible) - Slightly nicer human-readable generated code - Include full rule body (S-expression) in comment, not just line number - Inline some expressions (no more `let val23 = 1234; ... f(val23);`)