This is a badly titled question...maybe a moderator can make it better.Nearly two decades ago, I took a computer graphics class as an undergraduate.  We got to do whatever we wanted for a final project as long as it demonstrated what we learned about CG.So, I read a book (I can't think of the name at all) that described a methodology to generate fractal images starting with a simple shape and mutating it using substitution.  It described abstract fractals and tree/flower fractals. I do recall implementing the Sierpinski Triangle in one of my sample imputs as well as a 3D tree.The input to the program was basically a series of arbitrary symbols defined by the program.  -----= might represent a rose.  Then you apply some substitutions for a given pattern.  --= > -+=---= might represent a longer rose with thorns.  So, applying that pattern to the initial string you get ----+=---=. Finally you loop over this string N number of times to create some desired effect.The book itself offered a ton of inputs with sample pictures, but no actual source code.  The implementation was completely left up to the developer.I would like to know if somebody can help me with the terminology for this technique and bonus points for the name of the book (or a book) that described this process?
Help identify terminology for pattern substituion?
terminology
My first guess is that you're thinking of L-systems: http://en.m.wikipedia.org/wiki/Lindenmayer_systemI found this example at http://en.m.wikipedia.org/wiki/Koch_snowflake , linked from the Sierpinski page:The Koch Curve can be expressed by a rewrite system (Lindenmayer system).Alphabet : FConstants : +, Axiom : F++F++FProduction rules:F  FF++FFHere, F means draw forward, + means turn right 60, and  means turn left 60.