Adventures in homoiconicity
summary
Demonstrates concrete uses of Clojure homoiconicity: a Quil sketch reads its current namespace and visualizes the number of public defs (example showed 8 public defs) to drive a 0–255 background color, uses macroexpand to view expansion of macros, and treats code as EDN to store and eval generator programs. Shows a Twitter bot that keeps the generator as data (Twitter bot stores generator code) and a self‑healing example that detects a divide‑by‑zero in average on an empty vector, selects a patch and replaces the failing function so tests pass.
AI-written summary · about
chapters (12)
- 0:00Introduction
- 1:24Overview
- 2:40homoiconicity
- 5:00code and eval
- 7:56visualize yourself
- 10:21visualize code core
- 12:39def tooling
- 14:12macros
- 17:36macro confession
- 19:20code generation
- 22:06selfhealing code
- 27:03summary








