Another GOL editor with Hashlife written in Rust

For general discussion about Conway's Game of Life.
Post Reply
edtoml
Posts: 6
Joined: September 11th, 2026, 8:44 am

Another GOL editor with Hashlife written in Rust

Post by edtoml »

I have been following the GOL since the original articles in Scientific American. The first program I wrote was a GOL simulator. When I am learning a new language I normally code a GOL simulator just to get a feel for the language. So I decided to learn Rust. Local AI also reached a point that it could do useful work. So I coded a GOL program using a algorithm I have been using since the 1980 with the help of my local AI using Letta code. It worked but I knew that Hashlife was a much better way to go. Then I found Golde. So I asked my local AI to translate it to Rust and add it to my existing code. After a few false starts I came up with Rustylife.

https://github.com/edt-xx/rustylife/releases/tag/v0.20

At this point it runs on Linux and Windows defaulting to Hashlife. It only understands the B3/S23 rule. I have used u32 nodes, u64 coords and aggressive garbage collection after each 'step'. This gives me a program that runs fast and usually uses less than a gig of memory.
User avatar
NNlk05
Posts: 806
Joined: January 14th, 2026, 8:42 pm
Location: Exploring in the Jungle of the INT Rulespace
Contact:

Re: Another GOL editor with Hashlife written in Rust

Post by NNlk05 »

edtoml wrote: September 11th, 2026, 8:59 am
When I am learning a new language I normally code a GOL simulator just to get a feel for the language.
Same here too :mrgreen:

Also, if you can add Macrocell input and output, that will be massive.
Feci quod potui, faciant meliora potentes.

Code: Select all

x = 10, y = 3, rule = B34twz/S23
b2o4b2o$obo4bobo$2bo4bo!
[[ AUTOSTART AUTOHIDEGUI TRACK 0 -47/270 ZOOM 4 GPS 45 STEP 3 THEME BOOK ]]
https://nnlk05.github.io

=3
The world is my country, science my religion.
edtoml
Posts: 6
Joined: September 11th, 2026, 8:44 am

Re: Another GOL editor with Hashlife written in Rust

Post by edtoml »

Thanks for trying the program

macrocell input (and output) is supported. What is not supported are rules other than b3/s23

patterns like kol's galaxy using the OTCA metapixel work fine as will other very large patterns.

---
---
User avatar
otismo
Posts: 1645
Joined: August 18th, 2010, 1:41 pm
Location: Florida
Contact:

Re: Another GOL editor with Hashlife written in Rust

Post by otismo »

Nice Editor - Thank You !

I have a laptop with no mouse so centering the patterns is problematic;

also seem to be losing a lot on the rendering side in exchange for marginal speed increase.

Still I do like it a lot - Great Job !

<3
"One picture is worth 1000 words; but one thousand words, carefully crafted, can paint an infinite number of pictures."
- autonomic writing
forFUN : http://gol.jct.onl
ArtGallery : http://cgolart.onfav.net
VideoWS : http://conway.life
edtoml
Posts: 6
Joined: September 11th, 2026, 8:44 am

Re: Another GOL editor with Hashlife written in Rust

Post by edtoml »

otismo wrote: September 11th, 2026, 8:53 pm I have a laptop with no mouse so centering the patterns is problematic;

also seem to be losing a lot on the rendering side in exchange for marginal speed increase.
Thanks for taking the time to try it.

I have tested on a Linux laptop with no mouse. You can zoom holding both buttons down and moving up or down on the trackpad. You can recenter by moving the cursor to the new center position and clicking the right button.

I am not clear as to what you mean about rendering.
edtoml
Posts: 6
Joined: September 11th, 2026, 8:44 am

Re: Another GOL editor with Hashlife written in Rust

Post by edtoml »

I released 0.21 with a fix for run length encoding parsing, and a small issue with macrocell parsing.

https://github.com/edt-xx/rustylife/releases/tag/0.21
edtoml
Posts: 6
Joined: September 11th, 2026, 8:44 am

Re: Another GOL editor with Hashlife written in Rust

Post by edtoml »

I released 0.22. It is about 25% faster than previous releases.

https://github.com/edt-xx/rustylife/releases/tag/v0.22
Post Reply