Talk:LIFECA/@comment-14600979-20140903001235/@comment-5334617-20140903004319

The workhorse of the program is the array G. It basically acts as a function: given information about 5 consecutive cells and their neighbours, what will be the state of those 5 cells in the next generation? (The reason I use 5 is because the information needed for 6 is more than the maximum allowed array elements.)  The first part of the program is analyzing every possible configuration of 5 cells and their neighbours, calculating the result, and putting it in G. The second part is drawing a random initial configuration. The third part is getting 5 cells at a time and their neighbours, and using that information as in index into G for their state in the next generation.

So, not really all the calculations, but as much as I can fit in an array.