L-System and the Role of an Educator
- Samuel John
- 6 days ago
- 3 min read
Updated: 3 days ago
"A tree as great as a man's embrace springs up from a small shoot;
A terrace nine stories high begins with a pile of earth;
A journey of a thousand miles starts under one's feet."
- Lao Tzu, Chapter 64 - Tao Te Ching
A while ago, I serendipitously stumbled upon Aristid Lindenmayer's work from the late 60s. He was a biologist looking at cell development. Lindenmayer described what he saw - the division of cells - in a new language, L-System (Lindenmayer system), a 'formal language' in the computer science context but one that works like any language really. It is a structured set of symbols with some predefined meaning.

What's great about formal languages is that the rules can be moulded and defined to suit anything your structure needs. The most popularly quoted example to demonstrate the workings of a formal language is below.
We begin with two symbols, 'a' and 'b'.
We define the rules that govern the lives of a and b.
Every ‘a’ grows into ‘ab’
and ‘b’ grows into ‘a’
We need somewhere to start - an initial point or 'axiom'. Let's begin with 'b' as our axiom.
And apply our rules 5 times (5 iterations). Each iteration replaces every newly created 'a' with 'ab' and every 'b' with an 'a'.
Axiom b
|
Iteration 1 a
| \
Iteration 2 a b
_| \
Iteration 3 a b a
_| | |_
Iteration 4 a b a a b
_| | |_ |_ \
Iteration 5 a b a a b a b a
and so it goes...

A simple set of rules that grows into a complex pattern when you look at the structure at large. I invite you to imagine all the things around you that may grow like this, from a single point outward into branching structures. A plant? City lights seen from a plane? Mould growing on your organic waste?
The great thing about formal languages is that the rules are only limited by your imagination, and with a little work, you might just be able to model any complex structure you like. Lindenmayer, who began applying L-System to model cell division, also created notation and simple rules to model the growth of plants and algae.
Let's see one of these in action. Here's an equation that to me captures the wild complexity of the firecracker plant (Russelia sp.) growing in our garden.
F = F[-F]F[+F][F]
Each F creates a line, - are left turns, + are right turns (turning at 22.5°), and the brackets help the function break off into branches - '[' creates a new branch and ']' returns the pointer drawing all of this to the main structure. Running the function above 5 times performs the actions contained in our function on every newly produced F from the previous iteration.
The result is a plant I couldn’t hope to draw by hand if I spent a year trying.

If you've made it this far, I'd like you to consider just one more thing - how teachers and educators are creating these complexities in society every single day. A kindergarten teacher working with toddlers for the nth time (many iterations) is likely creating complex patterns in society.
If you are an educator who sometimes feels the fatigue of doing a class for the 10th or 100th time, think about what you may be creating in the world. That lesson on Newton’s laws of motion, that game of ‘Web of Life’ or the simple act of teaching a child (or an adult) how to shade leaves onto paper, are all tiny branches created in the minds of students. Branches that may be the starting point of new and complex thoughts that shape the individual and, consequently, the world around them
If you'd like to try this out yourself, we've built a little tool on our website to create simple 2-D structures using the L-System (the images above were generated using the same tool). Mess around with the rules, play around with the angles, and really, just have fun! And if you feel like it, share your creations with us on an email. Take me to the tool!
About the Author
John is a writer, photographer and researcher with a keen interest in spiders. He regularly daydreams of using a calculator, a pencil and a cup of sambar to unravel the secrets of the universe.
Bình luận