Conway's Game of Life

This is the Game of Life, implemented with a Mathematica built-in CellularAutomaton function which isn't well documented.
But hey - it looks pretty.  See the other file, Jims_Game_Of_Life.nb for a slower, but simpler version.

\(\(\( (*\ 
      I\ don' t\ understand\ the\ arguments\ to\ the\ CellularAutomaton\ built - in; \ 
      this\ is\ straight\ from\ mathworld . wolfram . com/
          Life . html . \ \ It' s\ using\ "Rule 224", \ 
      which\ I\ can' 
        t\ find\ explained\ well\ enough\ for\ me\ to\ have\ a\ \(\(clue\)\(.\)\)\ *) \)\(
\)\(
\)\(\(Life[
          m_List?MatrixQ, {g1_Integer?NonNegative, g2_Integer?NonNegative}] := 
        CellularAutomaton[
{224, 
{2, {{2, 2, 2}, {2, 1, 2}, {2, 2, 2}}}, 
{1, 
                1}}, 
{m, 
              0}, 
g2, 
{{g1, 
                g2}, 
Automatic}] /; 
          g2 ≥ g1;\)\(
\)
    \)\)\)

(* This one draws a picture of a life board,  
      from a matrix of 1' 
        s and 0' s. *) 

RasterGraphics[state_?MatrixQ, colors_Integer : 2, 
        opts___] := 
      Graphics[Raster[Reverse[1 - (state/(colors - 1))]], 
        AspectRatio -> (AspectRatio /. {opts} /. 
              AspectRatio -> Automatic), opts]

r := Random[Integer, {0, 1}]

lifeInit[n_] := Table[Table[r, {  n}], {n}]

lifeInit[4] // TableForm

b = lifeInit[10];

b // TableForm

Show[RasterGraphics[b]]

b = lifeInit[10];
c = Life[b, {1, 5}];

Dimensions[c]

The array gets bigger as needed as  cells off the edges of the original are affected by the evolution.

b = lifeInit[100];

c = Life[b, {1, 100}];

Dimensions[c]

Do[Show[RasterGraphics[c[[i]]]], {i, 1, 100}]