Routing glider streams
Routing glider streams
Hi everyone,
I am beginner of game of life, and I am currently working on a project. Do you any structure that could act as a switch in IP datagrams routing : that is a structure that can either rotate or let pass a glider stream provided the "value" of previous gliders received before (an equivalent to headers in an IP datagram) ?
Thank you!
I am beginner of game of life, and I am currently working on a project. Do you any structure that could act as a switch in IP datagrams routing : that is a structure that can either rotate or let pass a glider stream provided the "value" of previous gliders received before (an equivalent to headers in an IP datagram) ?
Thank you!
Re: Routing glider streams
The specific answer depends on some technicalities, like whether the glider stream is periodic or not, and what the period is. You can probably find what you want in Chapter 6 (periodic circuitry) or Chapter 7 (stable circuitry) of the Conway's Life textbook.theo_t wrote: ↑January 29th, 2022, 9:20 amHi everyone,
I am beginner of game of life, and I am currently working on a project. Do you any structure that could act as a switch in IP datagrams routing : that is a structure that can either rotate or let pass a glider stream provided the "value" of previous gliders received before (an equivalent to headers in an IP datagram) ?
Thank you!
For non-periodic mechanisms, there was a recent discussion of permanent switches in this thread. The linked post shows a variant of Paul Callahan's old "bistable switch", which usually turns out to be not _quite_ what is needed -- but you never know, your case might be the exception!
Re: Routing glider streams
thank you very much, I'll look into it!
Re: Routing glider streams
I'm a bit lost, there is far too much information everywhere.
My project is about network programming, and I wanted to use the game of life as a funny support to make data routing visible, but I am not sure what I want is feasible : when the server receives a message, it encodes it into spaceships in the GOL, and have them go through structures that cannot be modified manually and I want that the server, knowing where the spaceship stream encoding the data should go, send the stream towards a specific location of the grid.
To do so I was thinking it might be possible to have structures that can either let through the stream or reflect it, for example using other spaceships with different period or shape before the data stream to make the structure either let through or reflect the whole stream coming after. Turns out to be really difficult to if it is even possible. Hence in order to know if I should abandon the idea before spending hours working on something impossible, I ask for your help I have absolutely no requirements on how the data is encoded (that is the period and the kind of spaceships).
My project is about network programming, and I wanted to use the game of life as a funny support to make data routing visible, but I am not sure what I want is feasible : when the server receives a message, it encodes it into spaceships in the GOL, and have them go through structures that cannot be modified manually and I want that the server, knowing where the spaceship stream encoding the data should go, send the stream towards a specific location of the grid.
To do so I was thinking it might be possible to have structures that can either let through the stream or reflect it, for example using other spaceships with different period or shape before the data stream to make the structure either let through or reflect the whole stream coming after. Turns out to be really difficult to if it is even possible. Hence in order to know if I should abandon the idea before spending hours working on something impossible, I ask for your help I have absolutely no requirements on how the data is encoded (that is the period and the kind of spaceships).
Re: Routing glider streams
Good, well, too much information seems like a better problem to have than not enough. Just need to pick out some specific mechanisms and try them out.
Sure, something like that can be done. Need a few more details about what form the message will take, that you're wanting to encode.theo_t wrote: ↑January 30th, 2022, 7:25 pmMy project is about network programming, and I wanted to use the game of life as a funny support to make data routing visible, but I am not sure what I want is feasible : when the server receives a message, it encodes it into spaceships in the GOL, and have them go through structures that cannot be modified manually and I want that the server, knowing where the spaceship stream encoding the data should go, send the stream towards a specific location of the grid.
It's a bit easier to either let a stream pass or block it off. Then a couple of those mechanisms together can act as a switch -- toggle one off and the other on at the same time, and send a copy of the message to both mechanisms.
Here's a sample stable toggleable switch, using MWSSes (middleweight spaceships) and an eater factory to either block off the MWSS lane or let signals through. Only one of the two signals coming in at the top left gets through, thanks to the "TOGGLE ON" then "TOGGLE OFF" glider signals coming in from the bottom.
Code: Select all
x = 282, y = 232, rule = LifeHistory
85.B$84.CB$83.C2B$82.B3C$81.4B$80.4B$79.4B$78.4B$77.4B$76.4B$75.4B$
74.4B$73.4B$72.4B$71.4B$70.4B$69.4B$68.4B$67.4B$66.4B$65.4B$64.4B$63.
4B$62.4B$61.4B$60.4B$59.4B$58.4B$57.4B$56.4B$55.4B$54.4B$53.4B$52.4B$
51.4B$50.4B$49.4B$48.4B$47.4B$46.4B$45.4B$44.4B$43.4B$42.4B$41.4B$40.
4B$39.4B$38.4B$37.4B$36.4B$35.4B$34.4B$33.4B$32.4B$31.4B$30.4B$29.4B$
28.4B$19.A7.4B$17.3A6.4B$16.A8.4B$15.A.A6.C3B$14.BA.A5.C3B$13.3BA5.B
3C$11.4B6.4B$9.6B5.4B$8.7B4.4B$.B.4B.8B2.4B$2AB.17B$2A18B$.2B.16B$4.
16B$5.15B$6.12B.B2A$6.11B2.BA.A258.B$2.2A3.10B5.A257.2B$3.A3.6B2A2B5.
2A255.3B$2.A4.6B2A3B260.4B$2.2A3.10B260.4B$5.2AB.8B259.4B$2.2AB2AB3.
7B257.4B$3.A.B6.6B256.4B$.A3.2A4.6B148.A107.4B$.4A2.A.8B146.3A106.4B$
4.A.A.A9B144.A3B105.4B$.2A.A.BA2B.7B143.B2AB105.4B$2.A.A2.2B3.6B7.2A
133.4B78.A.2A4.A18.4B$.A2.2A.B4.7B6.A133.4B79.2A.A3.A.A16.4B$.A.A2.A.
A3.7B3.BA.A132.4B87.A.A15.4B$2.A.A2.2A3.8B2.B2A15.B116.4B79.5A3.2A.3A
12.4B$3.A8.11B16.4B113.4B79.A2.A2.A3.B4.A10.4B$12.11B15.6B111.4B80.2A
2.B2A2.2AB3A10.4B$12.11B8.3B3.4B2A2B109.4B86.3B.2A.A11.4B$13.11B6.6B.
3BA2BA2B106.B2C2B86.7B5.A6.4B$13.2B.7B6.2BA9B2A4B104.2BC2B87.5B5.3A5.
4B$12.11B7.ABA15BD.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.
B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.BCBC3B.B.B.B.B.B.B.
B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B
.B.B.6B2.A7.4B$12.10B8.2A14BD3BD100B2C97B2.2A5.4B$10.12B9.20BD182B5D
15B4.4B$8.13B12.13BD4BD181BD4BD13B5.4B$7.17B8.15B5D186BD15B2.4B$7.18B
7.201BD3BD21B$5.2AB.13B2A2B5.17B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.
B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.5B.B.B.B.
5B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.
B.B.B.D.B.B.B.6B2A7B$4.A.AB3.4B.6B2AB5.16B98.4B10.4B81.5BA2BA5B$4.A8.
B4.8B3.17B97.4B12.4B80.6B2A5B$3.2A15.6B2.4B3.11B96.4B14.4B77.2AB.9B$
19.7B.4B3.13B94.4B16.4B75.A.AB4.6B$19.6B.4B3.15B92.4B18.4B74.A8.3B$
13.A6.9B4.16B90.4B20.4B72.2A8.5B$13.3A4.8B5.17B88.4B22.4B84.2A$16.A2.
8B6.16B88.4B24.4B83.A$15.2A2.7B9.13B88.4B26.4B83.3A$15.10B14.2B2A5B
87.4B28.4B84.A$17.3B3D2B14.2B2A3B88.4B30.4B$17.5BD2B13.8B87.4B12.A11.
A7.4B$14.2B.4B3DB14.8B85.4B13.3A7.3A8.4B$12.13B14.8B84.4B17.A5.A12.4B
$12.13B15.7B83.4B17.2A5.2A12.4B$11.14B15.7B82.4B18.9B13.4B$12.14B14.
6B82.4B21.5B16.4B$11.10B2.4B13.6B81.4B21.7B16.4B$9.B.11B2.4B12.5B81.
4B21.9B16.4B$8.2A14B.4B10.6B80.4B22.10B16.4B$8.2A26B4.6B78.4B20.19B
11.4B$9.28B2.7B77.4B18.2B.19B12.4B$9.28B2.6B77.4B18.2A20B2A12.4B$13.
24B.7B76.4B19.2AB.18B2A13.4B$13.2A31B74.4B21.B.20B15.4B$10.B.B2A6B2.
2B2.19B61.2A10.4B25.16B19.4B$9.2A8B11.17B61.A9.4B27.14B21.4B$9.2AB.4B
15.15B3.B55.A10.4B27.4B2.9B22.4B$10.B3.2B17.15B.B2A54.5A5.4B5.2A20.4B
3.8B24.4B$15.2B15.18B2A59.A4.4B5.A20.4B3.11B23.4B$14.B2AB14.12B2A3B.B
57.3AB2.7B.BA.A19.D3B4.12B23.4B$15.2A16.11B2A2B59.A.2B3.7B.B2A19.4B5.
12B24.4B$33.10B2.2B60.4A12B20.2B2D7.11B25.4B$35.B.6B3.2B57.2A2.BA3B2A
7B19.4B6.4B.8B26.4B10.2A$39.4B2.B2AB55.A2.3AB.2B2A7B18.4B7.2A4.7B27.
4B9.A$38.B2A2B3.2A56.2A.A.B3.10B6.A10.4B9.A4.7B28.4B10.A$39.2A66.A8.
8B5.3A7.4B7.3A6.6B22.2A5.4B5.5A$107.2A7.9B7.A5.4B8.A8.7B22.A5.4B4.A$
117.3B2.4B5.2A4.4B18.8B21.A.AB.7B2.B3A$115.5B3.4B4.9B5.2A13.8B21.2AB.
7B3.2B.A$115.2A7.4B5.6B6.A14.9B22.12B4A$116.A8.4B2.8B7.A12.6B.4B21.7B
2A3BAB2.2A$113.3A10.15B4.2A12.7B.4B20.7B2A2B.B3A2.A$113.A13.14B3.A15.
6B2.4B19.10B3.B.A.2A$128.13B3.A8.B4.8B3.4B10.A6.8B8.A$129.10B.B2A.A.A
B3.4B.6B2AB5.4B7.3A5.9B7.2A$131.3B2AB3.BA.A.2AB.13B2A2B5.4B5.A7.4B2.
3B$131.3B2AB6.A3.18B7.4B4.2A5.4B3.5B$133.4B6.A3.17B9.9B4.4B7.2A$133.
3B5.2A5.13B13.6B5.4B8.A$130.AB.2B6.A8.12B12.8B2.4B10.3A$129.A.AB2AB6.
A9.10B10.15B13.A$129.A.ABABAB4.2A9.11B9.14B$126.2A.A.A.A.A2.A14.2B.7B
9.13B$126.A2.A2.2A.4A14.11B6.2AB.10B$128.2A4.A17.11B6.A.AB3.B2A3B$
134.A.A15.11B6.A6.B2A3B$135.2A6.A8.11B5.2A6.4B$142.A.A2.2A3.8B2.B2A
12.3B$141.A.A2.A.A3.7B3.BA.A12.2B.BA$141.A2.2A.B4.7B6.A11.B2ABA.A$
142.A.A2.2B3.6B7.2A9.BABABA.A$141.2A.A.BA2B.7B16.A2.A.A.A.A.2A$144.A.
A.A9B16.4A.2A2.A2.A$141.4A2.A.8B21.A4.2A$141.A3.2A4.6B19.A.A$143.A.B
6.6B18.2A$142.2AB2AB3.7B$145.2AB.8B$142.2A3.10B$142.A4.6B2A3B$143.A3.
6B2A2B5.2A$142.2A3.10B5.A$146.11B2.BA.A$146.12B.B2A$145.15B$144.16B$
141.2B.16B$140.2A18B$140.2AB.17B$141.B.4B.8B2.4B$148.7B4.4B$149.6B5.
4B$151.4B6.4B$153.3BA5.4B$154.BA.A5.4B$155.A.A6.4B$156.A8.B3C$157.3A
6.C3B$159.A7.C3B$168.4B$169.4B$170.4B$171.4B$172.4B$173.4B$174.4B$
175.4B$176.4B$177.4B$178.4B$179.4B$180.4B$181.4B$182.4B$183.4B$184.4B
$185.4B$186.4B$187.4B$188.4B$189.4B$190.4B$191.4B$192.4B$193.4B$194.
4B$195.4B$196.4B$197.4B$198.4B$199.4B$200.4B$201.4B$202.4B$203.4B$
204.4B$205.B3C$206.C2B$207.CB!
Code: Select all
x = 282, y = 232, rule = B3/S23
$84bo$83bo$83b3o55$19bo$17b3o$16bo$15bobo6bo$15bobo5bo$16bo6b3o5$2o$2o
4$20b2o$20bobo$2b2o18bo$3bo9b2o7b2o$2bo10b2o$2b2o$5b2o$2b2ob2o$3bo$bo
3b2o158bo$b4o2bo155b3o$4bobobo153bo$b2obo2bo154b2o$2bobo20b2o215bob2o
4bo$bo2b2o19bo216b2obo3bobo$bobo2bobo14bobo223bobo$2bobo2b2o14b2o215b
5o3b2ob3o$3bo235bo2bo2bo8bo$239b2o3b2o2b2ob3o$41b2o205b2obo$40bo2bo
109b2o100bo$31bo9b2o110bo99b3o$30bobo118bobo98bo$30b2o119b2o99b2o5$5b
2o15b2o225b2o$4bobo15b2o224bo2bo$4bo244b2o$3b2o236b2o$240bobo$240bo$
13bo225b2o$13b3o236b2o$16bo235bo$15b2o236b3o$41b2o212bo$41b2o$149bo11b
o$149b3o7b3o$152bo5bo$151b2o5b2o5$8b2o$8b2o2$144b2o20b2o$144b2o20b2o$
13b2o$13b2o92b2o$9b2o97bo$9b2o95bo$50b2o54b5o14b2o$50b2o59bo13bo$15b2o
27b2o62b3o12bobo$15b2o27b2o61bo15b2o$107b4o$105b2o3bo3b2o89b2o$46b2o
56bo2b3o4b2o36b2o51bo$39b2o5b2o56b2obo21bo23bo53bo$39b2o66bo21b3o18b3o
34b2o14b5o$107b2o23bo17bo37bo13bo$131b2o55bobo12b3o$145b2o42b2o15bo$
115b2o28bo57b4o$116bo29bo51b2o3bo3b2o$113b3o29b2o51b2o4b3o2bo$113bo30b
o61bob2o$144bo38bo22bo$141b2obobo15b2o17b3o21b2o$134b2o5bobob2o15b2o
16bo$134b2o7bo36b2o$143bo53b2o$141b2o54bo$130bo10bo56b3o$129bobob2o7bo
57bo$129bobobobo5b2o$126b2obobobobo2bo$126bo2bo2b2ob4o31b2o$128b2o4bo
34bobo5b2o$134bobo32bo7b2o$135b2o6bo24b2o$142bobo2b2o14b2o$141bobo2bob
o14bobo16bo$141bo2b2o19bo12b2obobo$142bobo20b2o10bobobobo$141b2obo2bo
26bo2bobobobob2o$144bobobo25b4ob2o2bo2bo$141b4o2bo30bo4b2o$141bo3b2o
29bobo$143bo32b2o$142b2ob2o$145b2o$142b2o$142bo10b2o$143bo9b2o7b2o$
142b2o18bo$160bobo$160b2o4$140b2o$140b2o5$156bo$155bobo$155bobo$156bo
9b3o$157b3o6bo$159bo7bo38$206b3o$206bo$207bo!
-
- Posts: 1228
- Joined: January 28th, 2022, 7:18 pm
- Location: Planet Z
Re: Routing glider streams
Can someone make a more accessible G-to-eater. I need it because I'm making a glider eater latch.
There's a faster and smaller G-to-mwss.
There's a faster and smaller G-to-mwss.
Code: Select all
x = 84, y = 77, rule = LifeHistory
58.A$57.A.A$58.2A15$47.2A$47.2A6$79.2A$79.A$81.A$61.2A14.5A$62.A13.A$
62.A.A12.3A$63.2A15.A$77.4A$72.2A3.A3.2A$72.2A4.3A2.A$80.A.2A$80.A$79.
2A2$45.2A$45.2A24.2A$71.A$36.2A.A32.3A$36.A.2A34.A6$37.A$37.3A$28.A11.
A$28.3A8.2A14.A$31.A22.A.A$18.A11.2A23.A$16.3A$15.A$15.2A$2A50.2A$.A50.
A.A$.A.2A49.A$2.A2.A23.D24.2A$3.2A10.C13.D.D18.2A$13.C.C2.2A9.3D18.A$
14.2C2.2A11.D11.2A6.3A$43.A9.A$44.3A$46.A$27.A3.2A$26.A.A3.A$25.A.A3.
A$21.2A.A.A3.A$21.2A.A2.4A.A$25.A.A3.A.A$21.2A.2A2.A2.A.A$22.A.A2.2A3.
A$10.2A10.A.A$10.2A11.A!
Re: Routing glider streams
What does "more accessible" mean? The one I posted has as many *WSS lanes of clearance as you want, just by adjusting the Snarks.AlbertArmStain wrote: ↑January 31st, 2022, 6:19 pmCan someone make a more accessible G-to-eater. I need it because I'm making a glider eater latch.
There isn't any known direct Herschel-to-eater or glider-to-eater conduit, unfortunately, so it's not terribly likely that anything much smaller than the above eater factory will show up any time soon.
-
- Posts: 2200
- Joined: August 5th, 2016, 10:27 am
- Location: 拆哪!I repeat, CHINA! (a.k.a. 种花家)
- Contact:
Re: Routing glider streams
Do you mean a device like this?AlbertArmStain wrote: ↑January 31st, 2022, 6:19 pmCan someone make a more accessible G-to-eater. I need it because I'm making a glider eater latch.
熠熠种花 - Glimmering Garden
Harvest Moon
2-engine p45 gliderless HWSS gun
Small p2070 glider gun
Forgive me if I withhold my enthusiasm.
Harvest Moon
2-engine p45 gliderless HWSS gun
Small p2070 glider gun
Forgive me if I withhold my enthusiasm.
-
- Posts: 1228
- Joined: January 28th, 2022, 7:18 pm
- Location: Planet Z
Re: Routing glider streams
Yes, like that but more minimal. The smaller the better.GUYTU6J wrote: ↑February 1st, 2022, 10:07 amDo you mean a device like this?AlbertArmStain wrote: ↑January 31st, 2022, 6:19 pmCan someone make a more accessible G-to-eater. I need it because I'm making a glider eater latch.
Re: Routing glider streams
I hope someone posts one -- I'd like a smaller solution, too. Hippo.69's solution can no doubt be reduced somehow, but I don't think there are any known mechanisms that are a whole lot smaller than that.AlbertArmStain wrote: ↑February 1st, 2022, 4:04 pmYes, like that but more minimal. The smaller the better.
-
- Posts: 1228
- Joined: January 28th, 2022, 7:18 pm
- Location: Planet Z
Re: Routing glider streams
You posted something similar here.dvgrn wrote: ↑February 1st, 2022, 4:54 pmI hope someone posts one -- I'd like a smaller solution, too. Hippo.69's solution can no doubt be reduced somehow, but I don't think there are any known mechanisms that are a whole lot smaller than that.AlbertArmStain wrote: ↑February 1st, 2022, 4:04 pmYes, like that but more minimal. The smaller the better.
I don't know if it's smaller.
Re: Routing glider streams
That's only superficially similar, actually. It creates an eater.AlbertArmStain wrote: ↑February 1st, 2022, 5:03 pmYou posted something similar here.
I don't know if it's smaller.
However, that eater is never used for the purpose of blocking a glider lane -- it just waits for a glider to come in on the B channel, and then the "A and B" output gets sent out... or it gets reset by the RESET glider (shown shooting down the eater in the example pattern).
The example I posted above is really not so bad compared to Hippo.69's mechanism. The simple eater toggle works fine as long as you don't mind converting your signals into MWSSes. A version could be made for gliders -- just replace the last Snark on both sides with a G->H->G edge shooter -- but that would increase the amount of time where there's potential interference between the blocking mechanism and stream being blocked.
Hippo.69's device, on the other hand, is really impressive because it works all the way down to period-30 glider streams, and it's also a toggle.
If you need something smaller, and you don't mind converting your signals to Herschels... did you look at permanent switch?
-
- Posts: 1228
- Joined: January 28th, 2022, 7:18 pm
- Location: Planet Z
Re: Routing glider streams
When I said latch, I meant a jk-flipflop. Kind of like the democrapic memory cell, but with the ability to filter out incoming gliders.dvgrn wrote: ↑February 1st, 2022, 5:27 pmThat's only superficially similar, actually. It creates an eater.AlbertArmStain wrote: ↑February 1st, 2022, 5:03 pmYou posted something similar here.
I don't know if it's smaller.
However, that eater is never used for the purpose of blocking a glider lane -- it just waits for a glider to come in on the B channel, and then the "A and B" output gets sent out... or it gets reset by the RESET glider (shown shooting down the eater in the example pattern).
The example I posted above is really not so bad compared to Hippo.69's mechanism. The simple eater toggle works fine as long as you don't mind converting your signals into MWSSes. A version could be made for gliders -- just replace the last Snark on both sides with a G->H->G edge shooter -- but that would increase the amount of time where there's potential interference between the blocking mechanism and stream being blocked.
Hippo.69's device, on the other hand, is really impressive because it works all the way down to period-30 glider streams, and it's also a toggle.
If you need something smaller, and you don't mind converting your signals to Herschels... did you look at permanent switch?