I borrowed fifteen minutes from my lunch hour to write a very minimal sample script today, and came up with the following. It appears that yesterday's quick manual scan missed perfectly good +1, +3, +5, and +7 PUSH operations:M. I. Wright wrote:How would I go about checking the output with Python?
Code: Select all
x = 9164, y = 30, rule = LifeHistory
2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C
48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.
2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C
48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.
2C48.2C48.2C48.3C47.3C47.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C
48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.
2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C
48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.
2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C
48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.
2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C49.2C47.2C48.2C48.2C48.2C48.2C
48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C49.2C47.2C48.2C48.2C48.2C49.
2C47.2C48.2C48.2C48.2C48.2C49.2C47.2C48.2C48.2C48.2C48.2C48.2C48.2C
48.2C49.2C47.2C48.2C50.2C48.2C46.2C48.2C$2C48.2C48.2C48.2C48.2C48.2C
48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.
2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C
48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.
2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C148.2C48.2C48.2C
48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.
2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C
48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.
2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C
48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.
2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C
49.2C47.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.
2C49.2C47.2C48.2C48.2C48.2C49.2C47.2C48.2C48.2C48.2C48.2C49.2C47.2C
48.2C48.2C48.2C48.2C48.2C48.2C48.2C49.2C47.2C48.2C$2560.C99.C99.C449.
C198.2C4297.3C47.3C1239.3C47.3C47.3C47.3C$110.C848.2C199.C49.C199.C
997.3C99.2C47.2C98.2C98.2C199.2C47.2C48.3C147.2C48.2C98.2C48.C.C4296.
C49.C700.2C448.2C$109.2C498.2C98.2C199.2C46.2C149.2C48.2C48.2C48.2C
148.2C299.2C696.C51.2C48.C.C46.C.C48.2C47.C.C48.2C47.C.C48.2C148.C.C
45.2C49.C50.2C48.2C47.C.C46.2C50.2C46.2C49.C1349.3C97.2C1348.2C100.C
98.3C97.3C195.3C147.3C700.C147.C49.C450.3C47.3C99.C95.2C150.2C297.C.C
92.C49.C49.C49.C$109.C.C98.C199.C99.C98.C.C97.C.C198.C.C47.C148.C.C
47.C.C47.C.C47.C.C147.C.C96.3C98.3C46.3C48.2C48.3C298.C49.C298.C49.2C
49.C98.2C99.C.C97.C.C147.C49.C49.C48.2C48.2C99.C48.2C49.C349.C149.C
149.C248.2C199.C149.C148.C50.C47.2C300.C149.C149.C349.C149.C149.C97.
2C100.2C98.C50.C48.C197.C149.C202.2C48.2C248.2C197.2C99.C299.2C247.C
49.C100.2C97.C149.C.C296.C51.C42.C49.C49.C49.C$59.3C147.2C198.2C98.2C
98.C99.C200.C198.C149.C248.C100.C48.C52.C47.C299.2C48.2C350.C149.C98.
C99.C99.C200.C49.C149.C397.2C148.2C148.2C248.C.C197.2C148.2C149.C48.
2C49.C47.3C248.2C148.2C148.2C99.C248.2C148.2C148.2C99.C50.2C47.C.C98.
C48.2C49.C197.C149.C200.2C48.2C148.2C98.2C198.C.C97.2C248.3C47.2C198.
3C48.C49.C48.3C48.C.C246.C349.2C42.C49.C49.C49.C$59.C149.C.C197.C.C
97.C.C752.3C242.C100.C48.C100.C248.3C47.C.C47.C.C748.2C47.2C648.2C
148.C.C147.C.C147.C.C247.C199.C.C147.C.C197.C.C96.C201.C48.C.C147.C.C
147.C.C97.2C248.C.C147.C.C147.C.C148.2C198.C.C599.C49.C147.C.C99.C48.
C248.C.C47.3C47.3C48.2C97.C51.C98.2C97.C149.C90.2C258.C189.2C107.C.C$
4.2C3.2C43.2C4.C43.2C48.2C4.C43.2C48.2C4.C43.2C4.C43.2C4.C43.2C48.2C
4.C43.2C48.2C4.C43.2C48.2C4.C43.2C48.2C4.C43.2C4.C43.2C4.C43.2C48.2C
48.2C4.C43.2C4.C43.2C48.2C48.2C48.2C8.C39.2C4.C43.2C4.C43.2C48.2C4.C
43.2C48.2C4.C43.2C48.2C48.2C48.2C48.2C3.2C43.2C3.2C43.2C3.2C43.2C3.2C
43.2C3.C44.2C48.2C48.2C4.C43.2C3.3C42.2C4.C43.2C4.C43.2C4.C45.2C4.2C
42.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C8.2C41.2C48.C.C44.2C48.2C48.
2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C45.2C5.C42.2C3.2C43.2C4.C.C41.2C
8.2C38.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C5.C42.2C3.
2C4.2C37.2C9.2C37.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C48.
2C48.2C48.2C4.C43.2C48.2C48.2C48.2C4.2C42.2C48.2C48.2C48.2C48.2C48.2C
48.2C48.2C48.2C4.C.C41.2C9.C38.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C
48.2C48.2C48.2C50.2C48.2C5.C42.2C48.2C48.2C48.2C48.2C48.2C48.2C48.2C
48.2C48.2C48.2C48.2C48.2C48.2C3.3C42.2C48.2C48.2C49.2C47.2C48.2C3.C
44.2C48.2C48.2C3.2C43.2C4.2C42.2C4.2C42.2C48.2C4.2C42.2C48.2C3.C44.2C
3.C44.2C4.C.C37.2C3.2C47.2C4.C43.2C48.2C4.2C42.2C3.2C44.2C47.2C4.C43.
2C48.2C48.2C4.C43.2C43.2C4.2C47.2C48.2C48.2C48.2C48.2C3.2C43.2C5.C42.
2C48.2C43.2C4.2C47.2C48.2C$4.C.C2.C.C42.C.C47.C.C47.C.C2.2C43.C.C47.C
.C2.2C43.C.C2.2C43.C.C2.2C43.C.C47.C.C2.2C43.C.C47.C.C2.2C43.C.C47.C.
C2.2C43.C.C47.C.C2.2C43.C.C2.2C43.C.C2.2C43.C.C47.C.C47.C.C2.2C43.C.C
2.2C43.C.C47.C.C47.C.C47.C.C8.C38.C.C2.2C43.C.C2.2C43.C.C47.C.C2.2C
43.C.C47.C.C2.2C43.C.C47.C.C47.C.C5.C41.C.C47.C.C2.C.C42.C.C2.C.C42.C
.C2.C.C42.C.C2.C.C42.C.C3.C43.C.C47.C.C47.C.C2.2C43.C.C2.C44.C.C2.2C
43.C.C2.2C43.C.C2.2C45.C.C3.C.C41.C.C47.C.C47.C.C47.C.C47.C.C47.C.C
47.C.C47.C.C6.2C44.C94.C.C47.C.C47.C.C47.C.C47.C.C47.C.C47.C.C47.C.C
47.C.C47.C.C44.C.C3.2C42.C.C2.C.C42.C.C3.C43.C.C7.C.C37.C.C8.2C37.C.C
47.C.C4.C42.C.C47.C.C47.C.C4.C42.C.C47.C.C47.C.C4.C42.C.C47.C.C3.2C
42.C.C2.C.C2.2C38.C.C7.2C38.C.C8.2C37.C.C4.C42.C.C47.C.C47.C.C4.C42.C
.C47.C.C47.C.C4.C42.C.C47.C.C4.C42.C.C47.C.C47.C.C47.C.C7.3C37.C.C4.C
42.C.C47.C.C3.C.C41.C.C47.C.C4.C42.C.C47.C.C47.C.C4.C42.C.C47.C.C47.C
.C4.C42.C.C47.C.C7.2C38.C.C4.C42.C.C9.C37.C.C2.3C42.C.C47.C.C4.C42.C.
C47.C.C47.C.C4.C42.C.C47.C.C47.C.C4.C44.C.C47.C.C47.C.C47.C.C3.2C42.C
.C47.C.C47.C.C47.C.C3.C43.C.C2.3C42.C.C3.2C42.C.C47.C.C3.2C42.C.C3.2C
42.C.C47.C.C3.2C42.C.C2.C44.C.C2.3C42.C.C47.C.C42.3C3.C.C46.C.C3.C43.
C.C47.C.C3.2C42.C.C47.C.C2.C.C42.C.C3.C.C41.C.C3.C.C41.C.C47.C.C3.C.C
41.C.C47.C.C3.C43.C.C3.C43.C.C3.C38.2C4.C.C46.C.C47.C.C47.C.C3.C.C41.
C.C4.C37.3C3.C.C46.C.C47.C.C47.C.C47.C.C47.C.C44.C3.C.C46.C.C47.C.C3.
2C42.C.C3.2C42.C.C4.C42.C.C2.C.C42.C.C3.2C42.C.C3.2C42.C.C3.C40.C3.C.
C46.C.C47.C.C$4.C4.C44.C49.C49.C4.C.C42.C49.C4.C.C42.C4.C.C42.C4.C.C
42.C49.C4.C.C42.C49.C4.C.C42.C49.C4.C.C42.C9.2C38.C4.C.C42.C4.C.C42.C
4.C.C42.C49.C49.C4.C.C42.C4.C.C42.C49.C49.C49.C49.C4.C.C42.C4.C.C42.C
49.C4.C.C42.C49.C4.C.C42.C49.C49.C6.2C41.C8.C40.C4.C44.C4.C44.C4.C44.
C4.C44.C49.C49.C49.C4.C.C42.C5.C43.C4.C.C42.C4.C.C42.C4.C.C44.C5.C43.
C49.C49.C49.C49.C49.C49.C49.C10.C138.C49.C49.C49.C49.C49.C49.C49.C49.
C49.C46.C5.C.C41.C4.C44.C49.C4.2C3.C39.C4.2C4.C.C36.C49.C5.2C42.C4.2C
5.2C36.C49.C5.2C42.C4.2C43.C49.C5.2C42.C4.2C43.C5.C.C41.C4.C6.C37.C
11.C37.C4.2C3.2C38.C5.2C42.C4.2C5.2C36.C49.C5.2C42.C4.2C43.C49.C5.2C
42.C4.2C43.C5.2C42.C49.C49.C49.C4.2C3.C39.C5.2C42.C4.2C4.3C36.C10.3C
36.C49.C5.2C42.C4.2C43.C49.C5.2C42.C4.2C43.C49.C5.2C42.C49.C4.2C3.C.C
37.C5.2C42.C4.2C4.2C37.C4.C44.C49.C5.2C42.C4.2C6.C36.C49.C5.2C42.C4.
2C43.C49.C5.2C44.C49.C49.C49.C5.C.C41.C49.C49.C49.C4.2C43.C4.C44.C4.
2C43.C49.C4.2C43.C4.2C43.C49.C4.2C43.C5.C43.C4.C44.C49.C44.C5.C48.C4.
2C43.C49.C4.2C43.C49.C49.C5.C43.C5.C43.C49.C5.C43.C49.C49.C49.C46.C3.
C48.C49.C49.C5.C43.C44.C5.C48.C49.C49.C49.C49.C50.C48.C49.C4.2C43.C4.
2C43.C5.2C42.C49.C5.C.C41.C5.C.C41.C4.2C44.C48.C49.C$713.2C397.3C596.
C.C48.2C1844.C.C47.C.C3.C94.C.C46.C.C4.C.C91.C.C46.C.C5.2C91.C.C46.C.
C197.C.C4.C43.C.C46.C.C3.2C93.C.C46.C.C5.2C91.C.C46.C.C48.C.C196.C.C
3.C44.C.C46.C.C3.C49.C94.C.C46.C.C4.3C91.C.C46.C.C98.C.C96.C.C48.C.C
46.C.C3.C.C42.C5.C93.C.C46.C.C4.2C92.C.C46.C.C6.C91.C.C199.C198.C.C
48.C50.C99.C49.C99.C98.C139.C58.C.C99.C788.C410.C49.C48.C.C147.C48.C.
C$367.2C346.C203.2C191.C649.C.C250.C152.C945.3C491.C49.C149.C6.C142.C
7.C.C139.C8.2C189.C99.C7.C141.C6.2C141.C8.2C139.3C47.3C47.C99.C6.C49.
C142.C6.C142.C7.3C142.C46.C99.C55.2C142.C6.C.C140.C7.2C$318.2C47.C.C
448.2C98.2C193.C203.3C694.2C151.2C100.C844.C339.2C46.2C48.2C412.C150.
C.C447.C148.2C88.3C49.C49.C357.C149.C143.2C202.C.C299.C.C135.2C48.2C
359.2C1294.3C1097.2C49.C48.2C49.C$318.C.C46.C101.2C150.2C194.2C50.2C
49.C396.C50.3C643.C.C150.C.C98.2C50.C136.2C300.2C243.3C54.3C51.C192.C
46.C98.C.C45.C.C47.C.C562.C42.2C556.C87.C52.C49.C507.C142.C.C98.C542.
C.C47.C.C358.C.C254.2C133.2C47.2C52.2C48.2C645.3C101.C453.3C642.2C49.
2C47.2C49.2C$115.2C149.2C50.C150.C.C98.2C49.C.C140.2C53.C48.2C150.2C
142.3C48.3C100.C49.C100.3C746.C49.C.C48.2C50.C85.C.C57.2C239.2C207.2C
35.C56.C92.3C150.2C45.2C98.C47.C49.C158.2C48.2C396.2C200.2C444.C202.
3C647.2C150.C49.C341.C49.C50.2C308.C256.C.C131.2C47.2C52.2C48.2C646.C
49.3C52.C47.3C402.C288.C53.C154.C148.C48.C.C48.C48.C.C$10.2C103.C.C
148.C.C200.C100.C.C48.C49.2C90.2C105.C148.2C50.2C91.C50.C153.C48.3C
48.C100.3C238.C405.2C100.C.C48.2C85.C59.C.C240.C205.2C37.C56.C91.C52.
3C97.C.C44.C.C354.C.C47.C.C98.2C48.2C247.C198.2C100.2C48.2C496.C150.
3C47.3C446.C.C148.2C48.2C100.C49.C291.C.C154.2C202.2C52.2C150.C135.C
48.C53.C49.C48.2C596.C48.C102.C49.3C353.C286.2C52.2C51.C48.C52.2C$10.
C.C102.C150.C303.C100.C.C91.C255.C48.2C93.C50.C201.C51.C99.C239.2C46.
C50.C46.C260.C.C150.C.C144.C198.2C250.C186.C51.C503.C49.C100.C.C47.C.
C98.2C48.2C297.C98.2C48.2C100.2C48.2C346.C149.C49.C100.3C47.3C446.C.C
47.C.C98.2C48.2C100.C49.C140.C51.2C103.C.C47.2C48.2C102.C.C51.C.C486.
2C45.2C600.C102.C48.C48.3C591.C.C51.C.C49.2C47.2C52.C.C$10.C44.2C105.
2C507.C400.C346.C151.C238.C.C44.2C49.2C45.2C759.C.C489.C653.C49.C100.
C.C47.C.C397.C49.C98.2C48.2C498.C49.C99.C49.C100.3C47.3C446.C.C47.C.C
98.2C48.2C192.C.C45.2C55.C49.C.C47.C.C101.C53.C490.C43.2C54.2C49.2C
50.2C101.2C492.C47.C44.3C46.3C105.3C138.3C354.C.C46.C.C$55.C.C104.C.C
249.2C1441.C.C48.C.C44.C.C106.C550.2C48.2C49.C698.C597.C49.C550.C49.C
648.C49.C99.C49.C599.C.C47.C.C191.C47.C.C104.C49.C259.2C433.C52.2C49.
2C50.2C101.2C51.2C49.2C438.C43.C48.C55.3C49.C140.C118.3C395.C$55.C
106.C45.2C204.C.C548.2C699.3C394.2C499.2C49.C.C47.C.C594.3C149.2C
2048.C49.C890.C363.2C51.C.C98.2C387.C50.C51.C48.2C52.C49.2C49.2C484.C
48.C54.C52.C140.C117.C50.3C343.2C$208.C.C203.C549.2C700.C396.C.C42.C
455.C.C48.C49.C596.C151.C.C3352.C.C50.C100.C.C537.2C105.C50.C588.C95.
3C213.C49.C345.C.C$208.C298.2C457.C547.3C150.C439.2C455.C698.C3505.C
153.C541.C840.C266.C397.C$507.C.C1004.C592.C.C6197.C154.3C505.2C$507.
C1007.C98.3C6053.2C790.C507.C.C$1614.C6054.2C792.C$1615.C6055.C$6960.
2C$6960.C.C$6960.C!
Here's the Python script that produced the above output from the last attachment. It should be easy to adjust the script to sort by the PUSH or PULL distance, or do whatever other kind of reporting you want:
Code: Select all
import golly as g
inputfname="C:/youshouldtype/yourpath/here/3glider-block-output.txt"
g.new("")
with open(inputfname) as f: data=f.readlines()
offset=0
for item in data:
pat=item.split(" ")[0].replace(".","b").replace("*","o").replace("!","$")
clist=g.parse(pat)
newclist = g.evolve(clist,1024)
minx=min(newclist[0::2])
maxx=max(newclist[0::2])
miny=min(newclist[1::2])
maxy=max(newclist[1::2])
if maxx==minx+1 and maxy==miny+1: # must have stabilized into a block, not a tub...
if minx==miny: # and it's on the key diagonal
g.putcells(clist,offset,0)
offset+=50
The task of finding and fixing my various mistakes is left as an exercise for the reader...!