Journal13 July 2026Vol. 32

Dispatch

Fibonacci is too small a trick for this machine.

A self-programming FSM: operands in, expected out, zero flag burns the opcode. Run it on a 4-bit slice. What works there works for the wide word by induction.

It quickly gets abstracted, and perhaps indistinguishable from a black box, if the final design has no reasonably impressive demo. Fibonacci and Collatz are so trivial they make Tomato severely underused.

I am considering a finite state machine that gives Tomato the capacity to program itself. A simple counter, a subtractor, a test-case ROM. The counter asserts operands into A, B, C. If the output matches the ROM, the zero flag writes the opcode — burning that instruction.

The hurdle is exhaustiveness on a wide machine. To simplify, take advantage of the slice. Run the state on a 4-bit cell. What works for 4-bit operands must work for the full width by induction. The opcode was always global and identical. Keep a localized version for a smaller FSM footprint.

Clock speed needs a clean balance. Too fast and the LEDs flash too quickly to appreciate. Too slow and a single opcode takes forever. An adjustable digital clock — rheostat or capacitor — so the bench can be watched. Long bus rides seem to help in ideation.