Tools
Tools – shipped, tested, on for everyone:
- transform – visual threading-macro pipeline: chain transforms, see every intermediate value, reversibility indicator
- rot13 – Caesar cipher by 13; its own inverse
- base64 – Base64 encode/decode
- url-encode – percent-encoding for URLs
- QR code – QR codes as SVG, inline, no server
- interval arithmetic – SICP 2.1.4 trace explorer: drag variable ranges, step through add/sub/mul/div on [lower, upper] intervals, compare against a Monte-Carlo sampled true range
- dijkstra explorer – algebraic path problem: one solver, three semirings (shortest, rainwater, widest)
- trapped rainwater – elevation map to retained water volume; O(n) two-pointer, SVG visualization
- counting change – SICP 1.2.2's change-counting procedure, traced step by step: call tree, call stack, code panel, subproblem table, memoization toggle
- primality test – SICP 1.2.6's three primality tests traced step by step: trial division, Fermat, Miller-Rabin, expmod work table, base map, Carmichael-number and pseudoprime presets
- representing sets – SICP 2.3.3's set interface over three representations (unordered list, ordered list, binary tree), traced comparison by comparison; tree rebalancing, cost table, growth chart
- huffman trees – SICP 2.3.4's Huffman-encoding-trees, traced step by step: forest-of-trees build, encode/decode, merge-rule and tie-order toggles, cost table against fixed-length coding and the Shannon entropy bound
- picture language – SICP 2.2.4's painters and frames, traced step by step: draggable frame, transform-painter call trace, a deliberately-buggy frame-coord-map toggle, reference-comparison test table
- symbolic algebra – SICP 2.5's generic arithmetic over scheme-numbers, rationals, and polynomials: an editable operation x type dispatch table, tower coercion, sparse vs dense term lists, drop simplification
- digital circuits – SICP 3.3.4's agenda-based circuit simulator, traced event by event: and-gate/half-adder/full-adder/ripple-carry presets, schematic view, clickable timing diagram, FIFO/LIFO x add-action!-init comparison
- marginalia – annotation workspace: paste an org-mode document, view property-drawer annotations as cards, edit verdicts, download updated source
- pasted file editor – paste/drag-drop file editor with a download; a ClojureScript port of Simon Willison's page
Programming visualizations – step through an algorithm or simulation one state at a time; a cross-cutting lens over the lists above and below, not a separate rollout:
- trapped rainwater – elevation map to retained water volume; O(n) two-pointer, SVG visualization
- dijkstra explorer – algebraic path problem: one solver, three semirings (shortest, rainwater, widest)
- representing sets – SICP 2.3.3's set interface over three representations (unordered list, ordered list, binary tree), traced comparison by comparison; tree rebalancing, cost table, growth chart
- counting change – SICP 1.2.2's change-counting procedure, traced step by step: call tree, call stack, code panel, subproblem table, memoization toggle
- huffman trees – SICP 2.3.4's Huffman-encoding-trees, traced step by step: forest-of-trees build, encode/decode, merge-rule and tie-order toggles, cost table against fixed-length coding and the Shannon entropy bound
- fib – four Fibonacci implementations side-by-side with step counts,
tool.fibgate - fair-queue – weighted-fair queueing over three tenants, watch virtual time drive tenant selection,
tool.fair-queuegate - gc-viz – tri-color mark-sweep garbage collector on a tiny heap, step through mark and sweep phases,
tool.gc-vizgate (50% canary, depends ontool.mutation) - digital circuits – SICP 3.3.4's agenda-based circuit simulator, traced event by event: and-gate/half-adder/full-adder/ripple-carry presets, schematic view, clickable timing diagram, FIFO/LIFO x add-action!-init comparison
Infrastructure and sinks – pieces other pages send to:
- display – 16-colour grid sink; presets from CGA 40x25 to a HUB75 panel; frames from a leased WebSocket, a driver window, or a built-in demo (spec v0.3.1)
- crowsnest – exposure sink and dashboard for the feature-gate SDK; loopback capture plane (spec v2.4)
Experiments – working, behind a tool.<slug> gate; the gate and cohort are on
experiments:
- message-format – ICU MessageFormat playground (plural/select); from Fung's RubyConf 2026 talk
- mutation – mutation testing on a tiny pure fn; from Schirp's RubyConf 2026 talk
- fib – four Fibonacci implementations side-by-side with step counts; from d'Oliveira's RubyConf 2026 talk
- fair-queue – weighted-fair queueing over three tenants; from Baygeldin's RubyConf 2026 talk
- poll – URL-encoded survey state without pushState; an essay with the SPA inside it
gc-viz is listed only under Programming visualizations above (it's a 50% canary that depends on the mutation gate, not its own line under Experiments). Also not listed anywhere: five ports whose pure core is complete and property-tested but whose page has no UI yet (dinner split, gas town TLA+, MonoWatch, order state flow, spect8r). All five sit on experiments with their gates, and each of their pages says so.
Hosted plugins – Claude Code plugins with a page here, not built here: