A TUTORIAL · RULE 30'S EDGE, READ AS STONE
Each wall of the Light Cone is one column of stone per generation of rule 30's edge: a run of solid blocks as long as the run law says, then lace. Choose the drivers, the depth, the block height and the spacing, watch the faces build here from the kit, then open the very same walls in Wander.
One face per wall: columns are generations from the phase on, rows are bits from the ground up. Stone is where the bit is 1. The run at the foot of each column is run(g), the number of clocks striking midnight together; above it is the lace, exactly periodic bit by bit (period 2^p(y) for the edge).
The link carries the walls, depth, unit, gap and phase; Wander's Light Cone 2 reads them and bakes the cone from the same tables (its rulerland.js is this kit's, byte for byte).
J bits inward form a pattern that depends only on g mod 2^p(J−1). Bit y repeats every 2^p(y) generations; that is the prefix law, and the kit stores one period per depth, so any generation is a lookup.g is the number of bits whose period divides g+1: a column of rank 12 (every 4096th) runs 34 deep.or driver, E ← E ^ ((E<<1) | (E<<2)). xor and comb are two other triangular XOR systems with measured periods; they make different lace on the same run law.Light Cone 2 · by Lars Rocha · the tables are rulerland.js (the twin of sitoolz/rulerland.py, prefixlaw.py behind it); this page only paints them.