Golly 3.0

For general discussion about Conway's Game of Life.
User avatar
Andrew
Moderator
Posts: 919
Joined: June 2nd, 2009, 2:08 am
Location: Melbourne, Australia
Contact:

Golly 3.0

Post by Andrew » August 31st, 2017, 6:48 am

Golly 3.0 is now available from Sourceforge:

https://sourceforge.net/projects/golly/ ... golly-3.0/
Use Glu to explore CA rules on non-periodic tilings: DominoLife and HatLife

User avatar
Saka
Posts: 3627
Joined: June 19th, 2015, 8:50 pm
Location: Indonesia
Contact:

Re: Golly 3.0

Post by Saka » August 31st, 2017, 8:14 am

Seems like there are "stripes" in 100% fill! Here's a cool case that's a bit "exaggerated", but I see stripes everywhere now, especially in large 1:1 scale fills.
Attachments
Wat
Wat
weirdfill.png (250.75 KiB) Viewed 13071 times

fluffykitty
Posts: 1175
Joined: June 14th, 2014, 5:03 pm
Contact:

Re: Golly 3.0

Post by fluffykitty » August 31st, 2017, 10:48 am

What was the filled area?

User avatar
praosylen
Posts: 2443
Joined: September 13th, 2014, 5:36 pm
Location: Pembina University, Home of the Gliders
Contact:

Re: Golly 3.0

Post by praosylen » August 31st, 2017, 11:54 am

fluffykitty wrote:What was the filled area?
I would guess 641x308, based on the population.
former username: A for Awesome
praosylen#5847 (Discord)

The only decision I made was made
of flowers, to jump universes to one of springtime in
a land of former winter, where no invisible walls stood,
or could stand for more than a few hours at most...

User avatar
muzik
Posts: 5614
Joined: January 28th, 2016, 2:47 pm
Location: Scotland

Re: Golly 3.0

Post by muzik » August 31st, 2017, 12:00 pm

Tested and also works for me - it seems as though larger selected areas show more periodicity.

User avatar
Andrew
Moderator
Posts: 919
Joined: June 2nd, 2009, 2:08 am
Location: Melbourne, Australia
Contact:

Re: Golly 3.0

Post by Andrew » August 31st, 2017, 8:54 pm

Saka wrote:Seems like there are "stripes" in 100% fill!
This problem has been around for a long time. Given that it's easy to avoid (by adjusting the width of the selection) it's not something I'm all that bothered to fix. The standard C rand() function Golly uses is not a high-quality random number generator. Actually, that might only be true on Windows -- I was able to reproduce the stripes on my Win7 system but not on my Mac, so presumably gcc has a better rand() implementation.

If you don't want to adjust the selection width then write a simple script to do your random fills. You'll probably have to use Python because Lua also uses rand() in its math.random function.
Use Glu to explore CA rules on non-periodic tilings: DominoLife and HatLife

User avatar
Andrew
Moderator
Posts: 919
Joined: June 2nd, 2009, 2:08 am
Location: Melbourne, Australia
Contact:

Re: Golly 3.0

Post by Andrew » August 31st, 2017, 10:27 pm

Andrew wrote:If you don't want to adjust the selection width then write a simple script to do your random fills.
Actually, I've already written such a script! Download random-fill.py from here:

http://www.conwaylife.com/scripts/
Use Glu to explore CA rules on non-periodic tilings: DominoLife and HatLife

User avatar
Saka
Posts: 3627
Joined: June 19th, 2015, 8:50 pm
Location: Indonesia
Contact:

Re: Golly 3.0

Post by Saka » September 2nd, 2017, 9:08 am

Golly crashes when running a pattern in a Neumann LTL rule with S0 or B1. Fix and cause?

User avatar
Andrew
Moderator
Posts: 919
Joined: June 2nd, 2009, 2:08 am
Location: Melbourne, Australia
Contact:

Re: Golly 3.0

Post by Andrew » September 2nd, 2017, 10:08 am

Saka wrote:Golly crashes when running a pattern in a Neumann LTL rule with S0 or B1. Fix and cause?
I can't reproduce any crash so can you be more specific about the exact rule. Note that Gnarl.mcl in Patterns/Larger-than-Life has B1 and doesn't crash (on my Mac at least), nor if I change the rule to use S0.
Use Glu to explore CA rules on non-periodic tilings: DominoLife and HatLife

User avatar
Andrew
Moderator
Posts: 919
Joined: June 2nd, 2009, 2:08 am
Location: Melbourne, Australia
Contact:

Re: Golly 3.0

Post by Andrew » September 3rd, 2017, 6:18 pm

@Saka: Are you able to post a pattern using an NN rule that causes Golly to crash? If not, I'll assume you were using an old beta version that was known to have bugs.
Use Glu to explore CA rules on non-periodic tilings: DominoLife and HatLife

User avatar
Saka
Posts: 3627
Joined: June 19th, 2015, 8:50 pm
Location: Indonesia
Contact:

Re: Golly 3.0

Post by Saka » September 3rd, 2017, 7:34 pm

Andrew wrote:@Saka: Are you able to post a pattern using an NN rule that causes Golly to crash? If not, I'll assume you were using an old beta version that was known to have bugs.
Sorry, I forgot about this.
The rule was B2,C0,M0,S1..12,B1..12,NN
I was just seeing the neighborhood.

User avatar
Macbi
Posts: 903
Joined: March 29th, 2009, 4:58 am

Re: Golly 3.0

Post by Macbi » September 3rd, 2017, 8:16 pm

I'm having some trouble getting Golly 3.0 to start. I'm running Debian Testing. I downloaded "golly-3.0-gtk-64bit.tar.gz" from sourceforge and unzipped it into a directory in my home directory. Then double clicking on "golly" did nothing so I tried

Code: Select all

$ ./golly
and got back

Code: Select all

./golly: error while loading shared libraries: libpng12.so.0: cannot open shared object file: No such file or directory
I looked up "libpng12.so.0" and found it was part of an obsolete package, libpng12-0. Of course I tried

Code: Select all

sudo apt-get install libpng12-0
but got back

Code: Select all

Reading package lists... Done
Building dependency tree       
Reading state information... Done
Package libpng12-0 is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or
is only available from another source

E: Package 'libpng12-0' has no installation candidate
as I sort of expected.

Should I try to install libpng12-0 directly? Or is there something else I should do?

User avatar
Andrew
Moderator
Posts: 919
Joined: June 2nd, 2009, 2:08 am
Location: Melbourne, Australia
Contact:

Re: Golly 3.0

Post by Andrew » September 4th, 2017, 2:59 am

Saka wrote:The rule was B2,C0,M0,S1..12,B1..12,NN
Obviously you meant R2, but yes, I can now reproduce the crash, so much thanks for the report. Looks like we'll have to do a 3.1 release sooner or later. I might wait a couple of weeks to see if any other serious bugs are found. The crash only occurs when using small range (< 5), unbounded NN rules, so avoid those until we have a fix.
Use Glu to explore CA rules on non-periodic tilings: DominoLife and HatLife

User avatar
Andrew
Moderator
Posts: 919
Joined: June 2nd, 2009, 2:08 am
Location: Melbourne, Australia
Contact:

Re: Golly 3.0

Post by Andrew » September 4th, 2017, 3:12 am

Macbi wrote:Should I try to install libpng12-0 directly?
I guess that's the first thing to try. I can't help much with Linux problems. What I have discovered is that it seems to be impossible to distribute a binary that will run on all flavors of Linux.
Or is there something else I should do?
If the above fails then I can only think of 2 other possible solutions:

1. If you have an existing libpng* file somewhere in your system (/usr/lib or /usr/local/lib?) then you might try creating a symlink called libpng12.so.0 that points to that file. If the two versions are binary compatible then it should work.

2. Failing that, try building Golly from source. Get the src tarball from sourceforge and follow the Linux-specific instructions in docs/Build.html.
Use Glu to explore CA rules on non-periodic tilings: DominoLife and HatLife

User avatar
Macbi
Posts: 903
Joined: March 29th, 2009, 4:58 am

Re: Golly 3.0

Post by Macbi » September 4th, 2017, 4:51 am

Failing that, try building Golly from source. Get the src tarball from sourceforge and follow the Linux-specific instructions in docs/Build.html.
Yep, that worked. Seems to be working fine now.

User avatar
gameoflifemaniac
Posts: 1242
Joined: January 22nd, 2017, 11:17 am
Location: There too

Re: Golly 3.0

Post by gameoflifemaniac » September 4th, 2017, 6:58 am

I found a bug that makes a pattern advance after resizing when running at a fast speed. Will it be fixed in 3.1?
I was so socially awkward in the past and it will haunt me for the rest of my life.

Code: Select all

b4o25bo$o29bo$b3o3b3o2bob2o2bob2o2bo3bobo$4bobo3bob2o2bob2o2bobo3bobo$
4bobo3bobo5bo5bo3bobo$o3bobo3bobo5bo6b4o$b3o3b3o2bo5bo9bobo$24b4o!

User avatar
Andrew
Moderator
Posts: 919
Joined: June 2nd, 2009, 2:08 am
Location: Melbourne, Australia
Contact:

Re: Golly 3.0

Post by Andrew » September 4th, 2017, 7:09 am

gameoflifemaniac wrote:I found a bug that makes a pattern advance after resizing when running at a fast speed.
I've no idea what you mean. Please describe the problem in more detail, and the exact steps needed to reproduce it.
Use Glu to explore CA rules on non-periodic tilings: DominoLife and HatLife

User avatar
gameoflifemaniac
Posts: 1242
Joined: January 22nd, 2017, 11:17 am
Location: There too

Re: Golly 3.0

Post by gameoflifemaniac » September 4th, 2017, 7:23 am

Try for example triple-Snark-wick-extruder.mc. Run at 8^5. Use the scroll bar. It will advance ~1000 generations, not 65536 every time you rotate the scroll bar. Will this be fixed in 3.1?
I was so socially awkward in the past and it will haunt me for the rest of my life.

Code: Select all

b4o25bo$o29bo$b3o3b3o2bob2o2bob2o2bo3bobo$4bobo3bob2o2bob2o2bobo3bobo$
4bobo3bobo5bo5bo3bobo$o3bobo3bobo5bo6b4o$b3o3b3o2bo5bo9bobo$24b4o!

drc
Posts: 1664
Joined: December 3rd, 2015, 4:11 pm

Re: Golly 3.0

Post by drc » September 4th, 2017, 1:09 pm

gameoflifemaniac wrote:Try for example triple-Snark-wick-extruder.mc. Run at 8^5. Use the scroll bar. It will advance ~1000 generations, not 65536 every time you rotate the scroll bar. Will this be fixed in 3.1?
I don't think that's a bug, it's just that your computer caps at a certain speed and so when you interact with the UI it updates the screen, also so it doesn't look like Golly is frozen.

User avatar
muzik
Posts: 5614
Joined: January 28th, 2016, 2:47 pm
Location: Scotland

Re: Golly 3.0

Post by muzik » September 14th, 2017, 1:08 pm

I know this is a really stupid and minor detail, but wouldn't it make more sense for the Non-Totalistic folder to be a subfolder of the Life-Like folder instead of being a top-level folder?


And by extension, HashLife under Life?

User avatar
dvgrn
Moderator
Posts: 10612
Joined: May 17th, 2009, 11:00 pm
Location: Madison, WI
Contact:

Re: Golly 3.0

Post by dvgrn » September 14th, 2017, 2:34 pm

muzik wrote:I know this is a really stupid and minor detail, but wouldn't it make more sense for the Non-Totalistic folder to be a subfolder of the Life-Like folder instead of being a top-level folder?

And by extension, HashLife under Life?
There's certainly a minor collision between theory and practice in classifying the rule-type folders.

Technically I would think the Life-Like folder would be a subfolder of the Non-Totalistic folder -- and then the Life folder would be a subfolder under that, with all of its sub-categories.

That seems like way too many levels, so the relatively flat folder organization seems like a decent compromise.

I'm really pretty happy with the categories we have now. Each top-level folder really does contain a fairly recognizable category of patterns in it -- patterns inside the folder have something in common, and different folders have very different types of patterns. So a new user exploring the collection can see a good representative selection of available patterns, and decide fairly quickly which folder(s) to focus on.

One of These Things Is Not Like The Others
The Hashlife folder is a special case, because it highlights an algorithm, not a rule. In theory it definitely doesn't belong as a subset of the Life folder, because the Hashlife algo can be applied equally well to any Life-Like rule -- or to Wolfram 1D rules. In practice, almost all of the really ridiculously large engineered patterns ever created have been Conway's Life patterns... so B3/S23 is bound to be disproportionately represented in the HashLife folder.

In fact, wolfram22.mc is the one lonely pattern in there that doesn't happen to be B3/S23.

Maybe we should put a few more Life-Like patterns in there to show that the HashLife advantage isn't specific to Conway's Life. As a random example, Patterns/Life-Like/Morley/breeder2.rle runs immeasurably faster at high step sizes with HashLife than with QuickLife.

... No, Probably Not
The problem is that nobody is going to expect to find a B368/S245 pattern like breeder2.rle in the HashLife folder. We'd have to call it "B368-S245-breeder2.mc", or something like that. And it's hard to find a Life-Like pattern that really needs to be in the HashLife folder and saved as a macrocell file -- for most purposes, breeder2.rle runs perfectly well in QuickLife.

So... it seems like the correct primary category for any pattern in a Life-Like rule is probably "Life-Like", unless it's a particularly huge pattern that really shows off HashLife in some way. The patterns currently in HashLife are mostly those that QuickLife can't run at all, or at least can't run very well.

When In Doubt, Leave It Where It Is
Decisions about whether or not to move patterns around are painfully subjective and likely to cause disagreements. For some patterns, it may be important to track down and change references in Golly's Help files, or even on the LifeWiki or other sites. So by default we mostly haven't been moving stuff -- we just add and subtract here and there, from one release to the next.

The Golly 3.0 reorganization of Self-Rep patterns was the exception that proves the rule. Hopefully that was worth doing because it makes it a little clearer to a new user what "Banks", "Codd", "Devore", and "JvN" are, or at least that they're related to each other somehow and to the idea of self-replication.

Help Wanted
Golly's pattern collection could definitely use a lot of help to get it back to "cutting-edge". The best I can claim for it now is something like "cutting-edge in a few random places". It would be wonderful if more people would really roll up their sleeves and put on their pattern-collector hats.

-- But this is definitely too big a topic to address in scattered messages between Golly 3.0 bug reports and feature requests. Let's move future discussion of pattern collection changes to a new thread.

drc
Posts: 1664
Joined: December 3rd, 2015, 4:11 pm

Re: Golly 3.0

Post by drc » September 30th, 2017, 2:06 am

I noticed the [1] button in the top-left corner of golly doesn't work. I'm on Windows 7, 64-bit, version 3.0b3
Attachments
the 1 button
the 1 button
1button.png (309 Bytes) Viewed 12477 times
Last edited by drc on September 30th, 2017, 2:36 am, edited 1 time in total.

User avatar
gameoflifemaniac
Posts: 1242
Joined: January 22nd, 2017, 11:17 am
Location: There too

Re: Golly 3.0

Post by gameoflifemaniac » September 30th, 2017, 2:13 am

What 1?
I was so socially awkward in the past and it will haunt me for the rest of my life.

Code: Select all

b4o25bo$o29bo$b3o3b3o2bob2o2bob2o2bo3bobo$4bobo3bob2o2bob2o2bobo3bobo$
4bobo3bobo5bo5bo3bobo$o3bobo3bobo5bo6b4o$b3o3b3o2bo5bo9bobo$24b4o!

User avatar
Andrew
Moderator
Posts: 919
Joined: June 2nd, 2009, 2:08 am
Location: Melbourne, Australia
Contact:

Re: Golly 3.0

Post by Andrew » September 30th, 2017, 3:32 am

drc wrote:I noticed the [1] button in the top-left corner of golly doesn't work.
Works for me. It resets the step size to 1 (ie. n^0).
Use Glu to explore CA rules on non-periodic tilings: DominoLife and HatLife

User avatar
Saka
Posts: 3627
Joined: June 19th, 2015, 8:50 pm
Location: Indonesia
Contact:

Re: Golly 3.0

Post by Saka » October 6th, 2017, 5:05 am

What's next for Golly, Andrew?

Also, what about a special thing in rule-generating scripts that if a pattern is loaded in a rule which is generated by an available script, Golly automatically runs the script using the rule as the input?

So for example, if a pattern using the alternating rule B3_S23--B2_S is loaded but the rule is not available yet, Golly will automatically run the alternating rule generator script and use B3_S23--B2_S as the input.

To make Golly do it automatically, there should be a "rule generators" panel in the settings that allows you to tell Golly what a type of rule looks like and what script to associate it with. For example, the alternating rule definition is like

Code: Select all

*_*--*_*
Or it could use Python and return True.

Post Reply