### Overview

The Game Of Life is played on a 2 dimension grid. The `x` axis is horizontal and the `y` axis is vertical. Each node on the grid can either be live or dead. The live nodes are green and the dead nodes are not green.

The Universe for the GOL is the set of live nodes. Each node is described with a catesian X,Y pair and a `:l` or `:d` value. The `:l` means live and you can guess what `:d` stands for. Each cartesion pair is inclosed in a square brackets and is followed by a `:l` or `:d`.

For example, "`[3 7] :l`" is a node at coordinate 3,7 and it is live.

A set of nodes is inclosed in a pair of curly brackets. So "`{ [5 6] :l, [8 17] :l}`" is a universe of two nodes.

The game starts out with a universe called "diehard". This universe dies out after 130 runs (evolutions). Every time you push the "Run Game of Life" button, the universe evolves once. The rules for evolution are:

• Any live cell with two or three live neighbours survives.
• Any dead cell with three live neighbours becomes a live cell.
• All other live cells die in the next generation. Similarly, all other dead cells stay dead.

The initial universe constitutes the seed of the game. The first generation is created by applying the above rules simultaneously to every node in the universe; births and deaths occur simultaneously, and the discrete moment at which this happens is sometimes called an tick. Each generation is a pure function of the preceding one. The rules continue to be applied repeatedly to create further generations.

### Predefined Universes

There are many pre-defined universes. Here is a common set. There are a few. You can cut and paste them on the game page in the Universe State text field.

`{[2 2]:l [2 3]:l [2 4]:l }`
`{[2 5]:l [2 6]:l [3 5]:l [3 6]:l [4 3]:l [4 4]:l [5 3]:l [5 4]:l}`
`{[1 1]:l [2 1]:l [3 1]:l [3 2]:l [2 3]:l}`
`{[1,2] :l,[2,2] :l,[2,3] :l,[3,3] :l, [3,2] :l,[4,3] :l}`