There's a complete and very good Java implementation at

http://www.math.com/students/wonders/life/life.html

complete with a decent history of the topic, and gallery of some of the more famous discoveries.
There's patterns with all kinds of crazy properties - There's even a pattern that determines if a number is prime or not. The mind boggles (at least mine does) at all this complexity from squat in terms of input. Life begins to seem a very apt name indeed.

Those with math-ish minds beware! I have just wasted a whole afternoon playing around with this thing. All those morphing patterns - it's kind of mentally addictive!.


Incidentally, it always struck me that some of the things this system generates, like infinite growth, seem to disobey the second law of thermodynamics. Maybe someone could enlighten me?

Update: Several people have messaged me on this, so I think I now have my answer. Basically, the laws of the game are a bit too arbitrary for the second law to necessarily apply (which is, after all, essentially only an observational law about the real world. It need not to apply to some imagined system)
Txikwa points out that if we assume that changing the state of a cell requires some energy, then we can't have infinite growth without infinite energy input, just like the real world.
Also, as tdent points out, for most sensible definitions of entropy, an initial condition consisting of a few cells has very low entropy, and infinite growth means infinitely larger entropy.
Anyway, we are now far from the main subject of this node, so I will leave it at that.