From Cellular Automata To A Reconfigurable Computing Fabric
2019–2021 · Updated July 28, 2026

Moving local symbols became a reconfigurable computer.

These browser and GPU machines explore reversible routing, information conservation, dense mechanical behavior, organic motion, and nonlocal symbol transport. Their visible rules led directly to Cartilage: a locally owned Boolean fabric that can install circuits inside itself.

Run the lineage from its earliest hexagonal cells to the current WebGL and SystemVerilog core.

Cartilage Turns The Lineage Into A Computer

Cartilage Core publishes a compact WebGL1 machine, a hardware paper, local-clocked SystemVerilog RTL, a self-checking Verilator testbench, and an exact 252-bit circuit installation in its public source repository.

The Cartilage development path grows that core into a readable editor, named-wire tracing, visible component boundaries, larger ownership roots, recovery, saved circuits, and interactive lessons. Choose one package and build it with Brian.

Cartilage 2026 makes child-owned port roots and square 6x6 ownership regions visible in the running fabric. Cartilage Core descends directly from that packet's 4143b8a source revision; the 2021 machines below show the ideas taking shape.

Each Shader Executes A Local Machine

The active GPGPU update shader drives each page. Every pass reads one packed RGBA cell, fetches its six hexagonal neighbors, calls the active computeNewNodeState... function, writes the resulting state into the swap texture, and hands that texture to the display shader.

redArrow stores one of six port orientations. A copy replaces the complete packed cell with a selected neighbor; a rotation advances redArrow by one direction modulo six.

Reversible Rules Carry State Like A Signal

Simple reciprocal rules preserve local structure and turn visible motion into directed signal flow.

Screenshot preview of the Conservative cellular automaton Conservative

Active update: computeNewNodeStateSimple4. A cell copies a neighbor only when the two red arrows face each other across their shared edge. If no reciprocal neighbor is found, the cell keeps its state and rotates its red arrow. The current page runs a 128x128 state texture with three update passes and partial reseeding during the render loop.

Screenshot preview of the Charges cellular automaton Charges

Active update: computeNewNodeStateSimple5. It first tries the same mutual-facing copy as Conservative, then treats takeQ1fromBifTrueElseFromA as a charge bit. Equal charges repel by reverting to the original cell; either way the red arrow rotates. This version uses a 1024x1024 state texture, three update passes, and periodic partial reseeding.

One-Way Copying Creates Dense Mechanical Motion

One-way copying accumulates activity and produces packed, machine-like dynamics.

Screenshot preview of the Driller cellular automaton Driller

Active update: computeNewNodeStateSimple3. A cell copies the occupied neighbor selected by its own red arrow; the neighbor does not need to point back. On phases above 3.5, the copied/current red arrow rotates. The page runs a 128x128 state texture with 36 update passes and periodic partial reseeding.

Screenshot preview of the stable Machine cellular automaton Machine

Active update: computeNewNodeStateSimple4. This is the pure one-way copy rule: copy the whole occupied neighbor selected by the current red arrow, with no reciprocal-facing test and no rotation. The page runs a 128x128 state texture with 36 update passes and periodic partial reseeding.

Screenshot preview of the Machine automaton with random reinitialization Machine with re-init

Active update: computeNewNodeStateSimple3. The local rule is the same pure one-way copy used by the stable Machine: copy the occupied neighbor selected by the current red arrow, with no rotation. The difference is the surrounding JavaScript: this page uses a 256x256 state texture, one update pass, and full random lattice reinitialization on an interval.

Simple Turns Generate Organic Dynamics

Copy-and-turn schedules create islands and vortices from the same local state machinery.

Screenshot preview of the Islands cellular automaton Islands

Active update: computeNewNodeStateSimple3. A cell copies the occupied neighbor selected by its red arrow, then always rotates the resulting red arrow. That one-way copy plus unconditional turn is the whole visible rule. The page runs a 128x128 state texture with 36 update passes and periodic partial reseeding.

Screenshot preview of the Vortex cellular automaton Vortex

Active update: computeNewNodeStateSimple3. A cell copies the occupied neighbor selected by its red arrow, then rotates only on phase 6 (uniformPhase > 5.5). This sparse turn schedule, 512x512 state texture, 36 update passes, and partial reseeding during the render loop produce the vortex-like motion.

Symbols Reprogram Cells Across The Fabric

The earliest machines gave each hexagonal cell red and green I/O ports. A routing scheme existed as a symbol; the fabric streamed that symbol to another location and reprogrammed the receiving cell through its red port.

Local symbol motion and target-cell reprogramming produced Turing-complete behavior and established the bridge from cellular dynamics to programmable structure.

Model of computation routing video

A 29-second capture of the older Windows/Direct3D12 machine. The original phone video is 373 MB; this page uses a compressed web copy.

YouTube preview for older nonlocal symbol routing video Older YouTube record

An external video shows related machines running through the same local-symbol lineage.

Cartilage Gives Local Rules Circuit Roles And Ownership

The 2021 Cartilage branch joins local ports, parent pointers, serial configuration streams, and tile roles into a recursively reconfigurable circuit fabric.

Cartilage Core completed 6 by 6 AND installation Cartilage Core

Public source, an exact 252-bit installation, an architecture paper, SystemVerilog RTL, and a self-checking testbench.

Cartilage 2026 child-owned reconfiguration port roots running across the fabric Cartilage 2026

Child-owned reconfiguration port roots, square 6x6 ownership blocks, active port initialization, and a 450-frame run.

The first Cartilage WebGL machine Cartilage

The first local web Cartilage machine in this lineage.

Screenshot preview of Cartilage 3 Cartilage 3

The primary machine for nested region instantiation.

Screenshot preview of Cartilage 4 Cartilage 4

Another executable Cartilage variant in the local-rule lineage.

Local Rules Grow Into Owned Computation

Cellular automata, reversible systems, and symbol-routing machines supply the foundation. Cartilage adds owned regions, explicit ports, Boolean role installation, and recursive structural change.

Try Cartilage: Run the open one-slot multiplier.

To edit, load, save, share, and follow the browser, Raspberry Pi, and FPGA streaming work, request the private demo username and password on LinkedIn.