Growth Grammars

Growth grammars are a rule-based approach to the modelling of dynamic systems. In contrast to conventional imperative programming languages, rule-based approaches provide a natural and concise way of modelling: Most systems to be modeled behave according to a set of rules, and our perception works this way and not imperatively using a list of operations which have to be processed step by step.


Growth grammars originate from L-systems and their success, especially in describing growth processes of botany. In the design of growth grammars, special attention was drawn to botanical growth modelling, thus continuing the L-system tradition. However, growth grammars can be used in a large variety of disciplines, as it can be seen in the gallery.

Sensitive Growth Grammars

Sensitive growth grammars form an extended variant of L-systems. They include the possibility of global sensitivity, which means that not only local interactions between neighbouring objects, but also far-reaching interactions, e.g. overshadowing of plant parts, can be represented.

Relational Growth Grammars

Relational growth grammars (RGG) are based on the concept of graph rewriting. They include L-systems as a special case, but exceed their limits due to the versatility of graphs and graph rewriting rules. A simple but powerful graph query feature provides global sensitivity, thus enabling the modelling of complex, far-reaching interactions.


The programming language XL is our implementation of relational growth grammars. In XL, the advantages of the rule-based paradigm are combined with the strength of Java, including the rich set of existing Java libraries. You are no more restricted to the libraries provided by your modelling environment: Just import and use the Java packages of your choice.

Welcome to the website This site is the web centre of growth grammars of the Department Ecoinformatics, Biometrics and Forest Growth at the Georg-August University of Göttingen and its cooperation partners.