UP | HOME

Summary: Advprog 2026-04-23 — Code Transformation

Table of Contents

Key Claims

  • This class moves from arithmetic interpretation to code transformation, introducing the Python interpreter track within tolk.
  • Students are directed to create a python branch in their tolk fork.
  • The jotter for this class is empty (no live-coded content), suggesting the session was primarily organisational / branch-setup.

Summary

The 2026-04-23 class follows on from the interpreter introduction:

  • Aspects of Lisp: CLOS (continued)
  • Tolk: Students fork the repo, create a python branch, set up git remotes to pull from the upstream tolk repo and push to their own fork.
  • Ungraded assignment: Lisp packaging and pattern matching (continued)
  • Final assignment: Interpreters (announced)

The 20260423-jotter.org is essentially empty (only a header with :eval :no property), indicating no live-coded content was captured.

The introduction of Python parsing in tolk represents a significant step: the move from a toy s-expression language (arith) to parsing a real (subset of a) programming language with a different surface syntax. This will require a proper parser combinator approach (tolk/parser-combinators is already in the codebase).

Notes

  • The class is called "Code Transformation" — this refers to desugaring (PLAI Ch.4) as well as to the transformation from Python surface syntax to an AST.
  • The tolk Python track is separate from the Racket/arith track and beyond the scope of the current ingest.

Related