An L-system starts with an axiom (a seed string) and applies rules to rewrite it over multiple generations. The resulting string is then interpreted as drawing commands: F = draw forward, + = turn right, - = turn left, [ = save position, ] = restore position. Adjust the parameters and watch structures emerge.

Try editing the rules. Small changes create wildly different structures. That's the beauty of formal grammars — a tiny mutation in the genotype produces a dramatic change in the phenotype.