OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

 


 

   Game of Life: an XSLT implementation

[ Lists Home | Date Index | Thread Index ]

Hi Folks,

I have implemented the Game of Life[1] using XSLT.

It's kinda neat!  It nicely demonstrates some aspects of complex systems
such as evolution, attractors and feedback.

For example, here is a simple starting configuration (a filled-in square
means it's a live cell, an empty square means it's a dead cell):

http://www.xfront.com/life/orig.html

After applying the rules of Life once, the configuration evolves to
this:

http://www.xfront.com/life/out1.html

Then, after applying the rules of Life to that output (i.e., feedback),
the configuration evolves to this:

http://www.xfront.com/life/out2.html

Below I chronicle the configuration's evolution.  It settles into a
repeating pattern when it gets to the sixth iteration (the pattern
alternates between configuration 5 and 6 indefinitely).  These two
states represents an "attractor".

http://www.xfront.com/life/out3.html
http://www.xfront.com/life/out4.html
http://www.xfront.com/life/out5.html
http://www.xfront.com/life/out6.html

Each configuration is represented as an XML document.  Here is the
initial configuration:

http://www.xfront.com/life/orig-Input.xml

Here is the stylesheet which applies the Life rules, and produces the
next configuration:

http://www.xfront.com/life/GameOfLife.xsl

Here is a stylesheet which creates a graphical image of a configuration:

http://www.xfront.com/life/GameOfLifeViewer.xsl

Many thanks to Tom Passin, Len Bullard, Didier Martin and Bob Foster for
their excellent suggestions and insight!

/Roger

[1] http://www.math.com/students/wonders/life/life.html





 

News | XML in Industry | Calendar | XML Registry
Marketplace | Resources | MyXML.org | Sponsors | Privacy Statement

Copyright 2001 XML.org. This site is hosted by OASIS