What happens to a clock's pulses when their wire runs into a thick block of conductor? A blue head with a red tail circles the square loop at top left every 16 ticks, sending one pulse along the yellow wire each lap.
Try this Set circuit to random-mesh and press Reset: about 500 conductor cells start with a few dozen heads and tails. Within about 100 ticks active-signals falls to the few still circling in small closed loops.
About this model Where it ends up The run never stops. Each layout settles into a fixed cycle within about 100 ticks: in the default the clock keeps pulsing, the block keeps flickering, and the wiring beyond it stays yellow.
Brian Silverman designed Wireworld in 1987, and A. K. Dewdney's Computer Recreations column in Scientific American brought it to a wide audience. Its four states (empty, conductor, electron head, electron tail) are enough to build wires, clocks, diodes and logic gates.
Every patch updates at once from the previous tick: empty stays empty, a head becomes a tail, a tail becomes conductor, and a conductor becomes a head when exactly one or two of its eight neighbors are heads. The tail behind each head keeps a pulse moving forward. The board is 51 × 37 with closed edges, and the run never stops.
The circuit param picks a layout at setup. In clock-diodes, the default, a 16-cell loop holding one electron sends a pulse along the wire at y = 8 every 16 ticks, into a 5 × 3 block of conductor that the source labels a diode. The block takes in the first pulse (tick 19), then fires on its own with period 3 and passes nothing on: its three right-hand cells fire together, and a conductor next to three heads stays put. The electron on the lower wire starts at the wire's end, pointing off it, and is gone after one tick. In dual-clocks, the two clock wires stop three cells short of the output wire at y = 0, so the output never fires. random-mesh makes 28% of patches conductor, with heads and tails on about 4% of those.
Idea Brian Silverman · A. K. Dewdney (Scientific American Computer Recreations)
MathPets MathPets · org