## L-systems

L-systems (developed by Lindenmayer) are iterative techniques based on
"rewriting rules"; they provide a concise description of self-similar objects
that are found in nature (certain plants and simple animals), and - at a more
theoretical level - fractals. Even the simplest descriptions are capable of
producing plant-like structures, and this demonstration shows a few examples.
One of the simpler cases included here is the Koch curve. Take a straight line
and replace the middle third by two edges of an equilateral triangle. Now
repeat the process for each of the four line segments, and then once again, and
so on. This procedure can be described symbolically as "F -> F+F--F+F" where F
denotes a straight line segment, and + and - denote left and right 60 degree
turns. This an example of a rewriting rule in which F is replaced by something
else, where the replacement F also denotes a straight line but now of reduced
length. More intricate systems involve multiple rules and larger vocabularies
used to specify more complex tasks.

The user can select from a range of examples and pick the number of iterations
(larger numbers require more computation). Other parameters in some of the
examples (one or two turn angles, and the reduction factor governing the length
scales of successive iterations) can be changed, leading to variations in the
observed behavior.

(c) D. Rapaport