Waterbear Spaceship - Conway's Life
Written by Mike James   
Sunday, 01 March 2015

What do programmers do for fun? Some play code golf, some contribute to open source, but some try to build an alternative universe within Life. Waterbear is an amazing testament to what can be achieved if you put your mind to it. 



You almost certainly have encountered Conway's Life. It is one of the easiest cellular automata to understand and implement and it is a lot of fun. What you might not know is that there is a thriving community of "lifers" who build fantastic machines using just arrangements of cells on a standard Life simulator. Of course, to work with such large arrangements of cells the simulator has to run as fast as possible and there is a lot of work to be done creating the tools.

One of the tasks is to discover new shapes in particular classes and one such class are spaceships. These are groups of cells that move together in a specific direction and speed. Creating a spaceship isn't easy, but the first example was the original "glider" which moves slowly along a diagonal - see below:



The latest spaceship is much more complicated than the glider, much much more - it has 197896 cells in total. The Waterbear, so named because it looks a bit like a Tardigrade, a microscopic life form commonly known as a waterbear, is a 23,5 c/79 spaceship. What this means is that it moves 23 cells up and 5 over every 79 generations and this is the first known shape to do so. Most spaceships move in simple directions either horizontally, vertically, or on the diagonal. 

Take a look at the video to discover how complex this construction is:



Most people's first impression is how is it possible to build something like this?

The answer is that there is a hierarchy of mechanisms that can be put together to build new mechanisms.  For example, a Herschel is a shape that evolves into two blocks, two gliders and a ship after 128 generations. You can use this as a building block for other more complex mechanisms. Even so, the way that the building blocks interact isn't straightforward, but I suppose if you work with it for long enough you must develop an intuition. 

Is there any point?

First of all, is there any point in code golf or any of the other strange pastimes? 

Exploring the way that the simple rules of Life can be used to create complex behaviors might give us information on how complex systems in general evolve. 

If you are interested in joining in then see the LifeWiki for the sorts of things that have been discovered and a list of things we don't know. 




Apache Arrow 16 Adds Azure Blob Support

Apache Arrow 16 has been released with improvements to the C data interface and to Arrow Flight RPC, and the addition of support for Azure Blob data format.

JetBrains RustRover Now Commercially Available

JetBrains has announced the commercial release of RustRover, an IDE for Rust developers. The company describes RustRover  as combining advanced coding support with an integrated toolchain.

More News

C book



or email your comment to: comments@i-programmer.info

Last Updated ( Tuesday, 22 March 2016 )