General
Most patterns in "patterns" directory are explained in Stephen
Silver's Life lexicon. I have commented some of my patterns
in their defining RLE-files (lines starting with '#C' are comment
lines).Also some of my nameles still-lives (stillxx.RLE) and periodics
(periodicxx.RLE) must have well-known names, I just don't know them.
Diehards
'.dh' in the beginning of the name of a pattern refers to diehards
or long-living patterns that vanish eventually. For example,
"dh129.RLE" is a pattern vanishing at generation 129. Unfortunately,
there is no generally accepted definition for diehards.
In an infinite grid a diehard living arbitrarily long is easily
created by placing a distant blinker in the path of a glider, see
"dh314.RLE" for a bounded version of this. So should we allow a
diehard to have at most 7 live cells in generation 0? That would
perhaps be too restrictive, Silver says in his Lexicon that 130
generations might be the maximum lifetime for such a pattern.
As a practical temporary "definition" for a diehard I've used the
following:
The initial pattern must fit in a "small" bounding box to exclude
"glider and blinker" constructions in infinite grids. This is
quite a loose defition since it allows fairly big starting
patterns, but remember that a pattern of several tens of cells
may rapidly become a smaller pattern you can take as a true
diehard.
Playing with diehards is probably just for fun but at least for
bounded grids there are more serious related questions. For
example, given an nxn torus grid,what is the maximum lifetime
of any pattern vanishing eventually, and especially, how to get
it. This bound is,of course, bounded by the number of possible
states of the grid, patterns living longer being inevitably
periodic. Because of Gardens of Eden and other reasons, the actual
upper bound must be considerably lesser.
The guide of my "firstlife" applet contains some more information
on this topic. Please note, however, that some diehards are now
called boat designs. Although they are technically diehards according
to my broad definition (interpreting "small" suitably), I found
renaming them appropriate.
Boat designs
A boat design is a finite "Life" pattern consisting of boats,
long boats and one glider evolving to an empty pattern when run.
Removing the glider and any collection of islands must
produce a stable pattern (i.e. it remains unchanged when run).
Note that this definition allows combining long boats and/or
boats to form long ships of varying length.
Just like diehards, boat designs should run as long as possible
before vanishing.
I try to name my boat design files by the following template:
"bd(-type)(-size)(-surface)-lifetime.RLE",
where "type" is optional, its only value being currently 'int',
meaning that the pattern is sensitive to grid size, pattern's
position in the grid or both. In practice, missing of 'int' means
that the pattern runs in an unmodified way in the infinite grid.
'size' refers to the size of the grid and it must be of the form:
rowsxcolumns. The default size is 80x80 in which case it may be
omitted. 'surface' may be one of 'torus', 'ppp' and 'kb' for the
Klein bottle. 'torus' is the default and it
may be omitted. 'lifetime' should be always present. So
"bd-9574.RLE" is just a shorter form of "bd-80x80-torus-9574.RLE".
My current boat designs are very static by nature, the glider just
annihilates boats one by one and nothing else. There are, however,
reactions that could be used to bring in more dynamic effects.
"boat2block.RLE" shows a reaction used in "dynamicbd.RLE" to
demonstrate this. The reaction in "longboat2beehive.RLE" could be
used similarly. The construction in "dynamicbd.RLE" is useful only
at the final stage, but I'm eagerly seeking for more flexible
reactions.
Glider lifts
In "gliderlift.RLE", a suitably positioned very long-long boat
lifts a glider's path one step diagonally. Could there exist a
stable (simple) object doing the same? A small stable glider
lift would be useful in many kinds of tasks where combining two
stable glider reflectors would often be impractical.