Moosey wrote:Would it be possible to make a pattern which has a gun firing into a line of semi snarks and which after awhile tags another semisnark onto the end? At what rate would it grow? Olog(t)? Oslog(t)? I assume it’s the former.
It's rate of growth would be inversely proportional to two to the power of its current length. Which means
it would grow like O(log t).
You would have to use slow-salvo single-channel technology, which I've done some work on before. Possibly in this very thread.
It's a little tricky, at least assuming that you want each new semi-Snark to take (roughly) twice as as much time to be added as the previous one.
Answering The Wrong Question First
Just following the above requirement as it's written is fairly trivial: line up two semi-Snarks in their "absorb" phase with an elbow and an initial hand target, and figure out how far away the next hand target has to be to build the same thing again, lined up in a chain. Put a block in that next hand location, compile the whole thing with slsparse, and build a memory-loop gun for the recipe that comes out.
Even if you have a low-period gun firing into the upper end of the chain, as long as you start with a few dozen semi-Snarks so that the period of the whole chain is greater than the period of the loop gun, you don't have to worry about doing anything with the gliders coming out the far end, because there will never be any.
Okay, You Actually Want The Semi-Snarks To Do Something...
The problem gets a bit more painful if you want an output glider from the semi-Snark chain to trigger the construction of the next pair of semi-Snarks. You'll still have a memory-loop gun holding more or less the same recipe, but now you probably ought to add a construction for something like a one-time G-to-*WSS converter -- like knightlife's four-block one
Code: Select all
x = 111, y = 80, rule = LifeHistory
Then feed that MWSS through an MWSS-to-G and into a regulator
driven by a gun the same period as the memory loop. Set it up to open a switch and let out one copy of the single-channel recipe, then close the switch again.
You kind of need the universal regulator mechanism, because otherwise the time when the signal returns from the end of the semi-Snark chain is too unpredictable. I mean, you could build some counting circuitry to predict it, but it's easier to just use a regulator.
Fewer Semi-Snarks To Build, But Not Really Simpler
An interesting variant of this would be to build the semi-Snark chain in a spiral, around and around the memory-loop gun. Then your recipe could be for just one semi-Snark instead of a pair of them, plus a regular Snark, plus an MWSS seed, plus the next target hand block in a place where the recipe can pick it up on the next trip around the spiral.
The MWSS could cross the spiral directly back to the center -- from one of four directions, so you'd need a little extra circuitry to collect all those possible signals and feed them into the regulator to let the next semi-Snark recipe out.
The recipe won't go into the spiral semi-Snark chain, of course -- well, actually it _could_, perfectly well, but it also has to be fed into the parallel spiral of Snarks, so that it gets to the outside of the spiral undamaged to do its construction work, no matter how long the spiral gets.