Golly 2.8b3 (Perl is dead, long live Lua)

For general discussion about Conway's Game of Life.
User avatar
simsim314
Posts: 1823
Joined: February 10th, 2014, 1:27 pm

Re: Golly 2.8b3 (Perl is dead, long live Lua)

Post by simsim314 » May 23rd, 2016, 7:33 am

Andrew wrote: I'll try to do a build for you and Chris to test in the next day or so.
Thx! Notice most windows users will use NVIDIA card... it would be interesting to check someone on other OS with NVIDIA.

Anyway thx to rowett we can now check golly2.8, the grid is minor detail. Meanwhile other than this initial crash everything looks good.

Any specific area to check? Something major has changed except lua?

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

Re: Golly 2.8b3 (Perl is dead, long live Lua)

Post by Andrew » May 23rd, 2016, 7:50 am

simsim314 wrote:Any specific area to check? Something major has changed except lua?
Support for Lua and the switch to OpenGL are easily the most significant changes. See Help > Changes for the full list.
Use Glu to explore CA rules on non-periodic tilings: DominoLife and HatLife

User avatar
simsim314
Posts: 1823
Joined: February 10th, 2014, 1:27 pm

Re: Golly 2.8b3 (Perl is dead, long live Lua)

Post by simsim314 » May 23rd, 2016, 10:21 am

@Andrew

The View menu has a new Smarter Scaling option for displaying correctly colored patterns when zoomed out at scales from 2:1 to 16:1.

I don't see this feature, LifeHistory is green at 2:1.

Paste patterns are covered with a translucent rectangle instead of being enclosed by thin border lines.

This is nice - can we add transparency to the pattern as well? I think this will be huge help for conduits construction.

-----

BTW do we have some place for requesting/discussing new features in golly? I think there are plenty of things I would like to see added to golly.

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

Re: Golly 2.8b3 (Perl is dead, long live Lua)

Post by Andrew » May 23rd, 2016, 7:10 pm

simsim314 wrote:I don't see this feature, LifeHistory is green at 2:1.
Is the View menu's "Smarter Scaling" item ticked?
This is nice - can we add transparency to the pattern as well?
I tried it but found it too confusing. Maybe we could make it an option.
BTW do we have some place for requesting/discussing new features in golly?
The best place for making suggestions is the golly-test mailing list. You can subscribe here:
http://lists.sourceforge.net/lists/listinfo/golly-test

I should warn you that now might not be the best time to ask for new features -- at this stage I'm just keen to get 2.8 out the door! (It would be nice if there were more people working on the GUI code, especially those with programming experience on Windows or Linux.)
Use Glu to explore CA rules on non-periodic tilings: DominoLife and HatLife

User avatar
simsim314
Posts: 1823
Joined: February 10th, 2014, 1:27 pm

Re: Golly 2.8b3 (Perl is dead, long live Lua)

Post by simsim314 » May 23rd, 2016, 7:51 pm

Andrew wrote:Is the View menu's "Smarter Scaling" item ticked?
OK Cool! Could you add this in parenthesis in what's new? I wouldn't guess in my life this option is there, even after reading what's new in this version. Maybe it should be enabled by default?

Anyway looking at it, I have some issues:

1. Looing at Cordership-Gun-P784 in Life>Guns directory, using LifeHistory. Zooming out to 1:16 starts to blink very strongly. This's not happening every time, but it happens if you play with zoom-in/out a bit, you get very strong blinkering.

2. Gun-p165mwss in 16:1 is practically invisible, 8:1 and 4:1 is blinking a lot.

Maybe you could add some smoothing to the approximated color, and decrease the importance of 0? By smoothing I mean giving some extra weight to the current color (or to the most popular color in last N generations), so that switching color will be harder. Another option to reduce blinking is to try to give extra weight to the neighbors (don't switch color unless everyone else in the neighborhood want to switch to the same color).

Blinking is usually the result of "micro management" - some pixel is more or less randomly switched on and off, without caring about the "higher picture".
Andrew wrote:Maybe we could make it an option.
Could you add this an option to some pre-release build and people will give you feedback? I can see why it could be confusing. Maybe you could add some extra switches like the amount of transparency? Or this is too much?
Andrew wrote:I should warn you that now might not be the best time to ask for new features -- at this stage I'm just keen to get 2.8 out the door!
Haha... I think it's good to have a list of requests that comes from the end users, you many times don't really know what's missing as the developer. Don't you think the forum is more public and available place to gain more insightful feedback?
Andrew wrote:It would be nice if there were more people working on the GUI code
I kinda wanted to hack into golly... but I couldn't even build it on my system (followed the instructions in the build document and some linker error came along - something regarding x64-x32).

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

Re: Golly 2.8b3 (Perl is dead, long live Lua)

Post by Andrew » May 23rd, 2016, 8:39 pm

@simsim314 and @rowett:
Please try this .exe (64-bit) after setting your GollyPrefs back to normal (ie. grid_lines=1 and new_mag=5):

http://www.trevorrow.com/golly/Golly-test1.zip

Hopefully no more crash when it starts up. If it works then I'll do new 32-bit and 64-bit builds for Windows.
Use Glu to explore CA rules on non-periodic tilings: DominoLife and HatLife

User avatar
simsim314
Posts: 1823
Joined: February 10th, 2014, 1:27 pm

Re: Golly 2.8b3 (Perl is dead, long live Lua)

Post by simsim314 » May 23rd, 2016, 8:45 pm

Yep looks good!

User avatar
rowett
Moderator
Posts: 3777
Joined: January 31st, 2013, 2:34 am
Location: UK
Contact:

Re: Golly 2.8b3 (Perl is dead, long live Lua)

Post by rowett » May 24th, 2016, 12:30 am

Works for me too!

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

Re: Golly 2.8b3 (Perl is dead, long live Lua)

Post by Andrew » May 24th, 2016, 2:52 am

rowett wrote:Works for me too!
Excellent! Much thanks to you two for doing those tests.

I've uploaded new builds for Windows (32bit and 64bit). Didn't bother changing the version number. No need for you two to download the 64bit build -- just delete Golly.exe and rename Golly-test1.exe to Golly.exe. If you have time, maybe download and test the 32bit build, just to be 100% sure the crash has been fixed.
Use Glu to explore CA rules on non-periodic tilings: DominoLife and HatLife

User avatar
simsim314
Posts: 1823
Joined: February 10th, 2014, 1:27 pm

Re: Golly 2.8b3 (Perl is dead, long live Lua)

Post by simsim314 » May 24th, 2016, 3:45 am

32 bit working. Will check it all later on another station.

EDIT 32 and 64 confirmed on another windows station (windows7 GeForce210) that was previously reported to crash.

User avatar
Scorbie
Posts: 1692
Joined: December 7th, 2013, 1:05 am

Re: Golly 2.8b3 (Perl is dead, long live Lua)

Post by Scorbie » May 27th, 2016, 2:31 am

Lua's index starting at 1 and other quirks seemed a little uneasy for me, but looking at Golly's cell lists and bounding boxes, I think that choice seems better, actually. Unfortunately I don't have enough time for Life these days, but I would give Lua a try when I do.

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

Re: Golly 2.8b3 (Perl is dead, long live Lua)

Post by Andrew » May 28th, 2016, 1:52 am

simsim314 wrote:
Andrew wrote:Is the View menu's "Smarter Scaling" item ticked?
OK Cool! Could you add this in parenthesis in what's new? I wouldn't guess in my life this option is there, even after reading what's new in this version.
Help > Changes has a link to the "Smarter Scaling" option so I don't see any real need to repeat the stuff in that link.
Maybe it should be enabled by default?
The scaling option is significantly slower for large patterns so better if it's off by default.
Anyway looking at it, I have some issues:
...
Maybe you could add some smoothing to the approximated color, and decrease the importance of 0?
That would require major changes to the rendering code (and the scaling would be even slower). See the comments near the top of gui-wx/wxrender.cpp for how Golly renders patterns. The new scaling option is just a quick hack that temporarily changes the scale to 1:1 (as well as increasing the logical viewport size) and then uses OpenGL to scale down the resulting pixmaps.
Don't you think the forum is more public and available place to gain more insightful feedback?
I quite like the forum but apart from Dave Greene most of the other Golly developers don't frequent this site. It's better to use the golly-test mailing list so all members of the Golly Gang get a chance to discuss any suggestions.
Use Glu to explore CA rules on non-periodic tilings: DominoLife and HatLife

User avatar
simsim314
Posts: 1823
Joined: February 10th, 2014, 1:27 pm

Re: Golly 2.8b3 (Perl is dead, long live Lua)

Post by simsim314 » May 28th, 2016, 8:15 am

Andrew wrote:It's better to use the golly-test mailing list so all members of the Golly Gang get a chance to discuss any suggestions.
Well most of golly users are still in the forum. I think developers are important for discussions, but you don't really know what you should develop next without good users feedback. People might use the app in different ways, or feel differently about missing features as users than as developers.

Maybe we can have golly users discussion here, and golly developers discussion on the mailing list, with partial communication (like most important features to the users will be discussed by the developers). It's also good idea to separate the two discussion - as developers discussions become too technical from time to time.

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

Re: Golly 2.8b3 (Perl is dead, long live Lua)

Post by Andrew » May 28th, 2016, 8:40 pm

simsim314 wrote:Maybe we can have golly users discussion here ...
There's an old thread called What I'd like to see in Golly, so maybe just spark that back into life.
Use Glu to explore CA rules on non-periodic tilings: DominoLife and HatLife

User avatar
Scorbie
Posts: 1692
Joined: December 7th, 2013, 1:05 am

Re: Golly 2.8b3 (Perl is dead, long live Lua)

Post by Scorbie » May 28th, 2016, 9:56 pm

Perhaps that thread should be pinned at the top of, let's see, in the general discussion forum or the bugs forum?

User avatar
Scorbie
Posts: 1692
Joined: December 7th, 2013, 1:05 am

Re: Golly 2.8b3 (Perl is dead, long live Lua)

Post by Scorbie » June 6th, 2016, 5:25 am

3 things to point out:
1. Here is an incomplete but greatly enhanced giffer.py that can be on the python scripts. The one uploaded in conwaylife may be used too. (But one should write a semicolon at the end before closing, or it would cause flickering issues. Hope you did that in the lua version!)
http://conwaylife.com/forums/viewtopic. ... 776#p31776

2. I don't think perl_lib in the GollyPrefs file is needed, right?

3. Could you update the online help when Golly 2.8 becomes stable? Thanks!

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

Re: Golly 2.8b3 (Perl is dead, long live Lua)

Post by Andrew » June 6th, 2016, 7:09 pm

Scorbie wrote:1. Here is an incomplete but greatly enhanced giffer.py that can be on the python scripts. ...
That script causes Golly to crash on my Mac, presumably due to the Tkinter import. Even if the script worked flawlessly I'm not that keen on adding new Python scripts to Golly. I'd much prefer to see new Lua scripts. Note that future versions of Golly for iOS and Android are likely to support Lua scripting, so I've stopped writing Python scripts and have switched to Lua.
2. I don't think perl_lib in the GollyPrefs file is needed, right?
It's needed if the GollyPrefs file is used by both Golly 2.8 and 2.7 (not something I recommend, but lots of people seem happy to ignore my advice!).
3. Could you update the online help when Golly 2.8 becomes stable? Thanks!
Will do (I normally do it soon after uploading a new version to Sourceforge).
Use Glu to explore CA rules on non-periodic tilings: DominoLife and HatLife

User avatar
Scorbie
Posts: 1692
Joined: December 7th, 2013, 1:05 am

Re: Golly 2.8b3 (Perl is dead, long live Lua)

Post by Scorbie » June 7th, 2016, 2:59 am

Thanks for your answers.

About the python giffer.py: Too bad it crashes... Are you planning to remove python support eventually? If not, I think one more python script is better than nothing... But it is your project so I'll follow your choice. I'll try to extend the lua script to support multistate rules if I have time. Or I will just PM you how I managed to support more colors?

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

Re: Golly 2.8b3 (Perl is dead, long live Lua)

Post by Andrew » June 7th, 2016, 9:05 am

Scorbie wrote:Are you planning to remove python support eventually?
Highly unlikely, given the large number of scripts people have written.
I'll try to extend the lua script to support multistate rules if I have time.
giffer.lua already supports multi-state rules. If it doesn't work on your system then there's a bug somewhere, so please provide details.
Or I will just PM you how I managed to support more colors?
I'm not sure that's necessary. giffer.lua uses the current layer's color scheme, so if you want to use a different set of colors then just select Layer > Set Layer Colors before running the script.
Use Glu to explore CA rules on non-periodic tilings: DominoLife and HatLife

User avatar
Scorbie
Posts: 1692
Joined: December 7th, 2013, 1:05 am

Re: Golly 2.8b3 (Perl is dead, long live Lua)

Post by Scorbie » June 7th, 2016, 9:55 am

Andrew wrote:giffer.lua already supports multi-state rules. If it doesn't work on your system then there's a bug somewhere, so please provide details.
I meant: can it write gif files with more than 4 colors? This is necessary in writing LifeHistory gifs and it requires untrivial modification from several parts of the gif file.

If it does, then it's totally my bad. Sorry :( I just skimmed at the code but never run it... (And I thought you just translated the giffer.pl script into lua.)

I'll try giffer.lua out sometime this weekend.

Edit: Tried out giffer.lua and saw that you added support for multiple colors. Great and sorry for my misunderstanding! But I can also see that there is no support for moving objects or larger objects or borders, so I guess there is a place for giffer.py for now.
(Especially when one needs to generate gifs for lifewiki.)
Last edited by Scorbie on June 7th, 2016, 11:51 am, edited 3 times in total.

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

Re: Golly 2.8b3 (Perl is dead, long live Lua)

Post by drc » June 7th, 2016, 10:13 am

Will we get Lua apgsearch?

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

Re: Golly 2.8b3 (Perl is dead, long live Lua)

Post by Andrew » June 7th, 2016, 7:05 pm

drc wrote:Will we get Lua apgsearch?
Only if someone is willing to do the conversion from Python to Lua. I'm not planning to do it.
Use Glu to explore CA rules on non-periodic tilings: DominoLife and HatLife

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

Re: Golly 2.8b3 (Perl is dead, long live Lua)

Post by dvgrn » June 7th, 2016, 9:04 pm

Andrew wrote:
drc wrote:Will we get Lua apgsearch?
Only if someone is willing to do the conversion from Python to Lua. I'm not planning to do it.
@drc, this isn't quite as easy a task as the metafier.py or heisenbup.py conversions were, especially if you want the connection to the Catagolue server to work properly. Python has a lot of add-on libraries that can be imported at no extra cost, once the Python installation has been done.

By contrast, Lua has been kept boiled down to a bare minimum, so you don't get SHA-256 or a Web socket implementation for free... looks like both of those things are only a Google search away, but it might take quite a bit of effort to get it all working.

I doubt that the minor speed gain that you'd get by converting to Lua will be worth anyone's effort -- though it certainly might be interesting to be able to run apgsearch on a wider variety of platforms.

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

Re: Golly 2.8b3 (Perl is dead, long live Lua)

Post by muzik » June 14th, 2016, 6:30 pm

I want to know, when will the next update for the mobile version come out?

User avatar
Scorbie
Posts: 1692
Joined: December 7th, 2013, 1:05 am

Re: Golly 2.8b3 (Perl is dead, long live Lua)

Post by Scorbie » June 15th, 2016, 12:59 am

Since the question I put on the scripts/Python Questions thread does not seem to get much attention, I'll make it clear and ask it here.

Almost all golly scripts convert golly's cell lists to list of cell coordinates. That's why there are posts saying "You can do it with zip(celllist[::2], celllist[1::2]) in Python!" in the scripts thread.

I haven't used Lua, so I am not sure what is the best practice to achieve the same thing. Does anybody know this?

Post Reply