L-системы
Аристид Линденмайер, 1968. Формальная грамматика, которая рисует растения, фракталы и невозможные кривые. Правила переписывания строк + черепашья графика.
Как это работает
L-система — это набор правил замены символов. Начинаем с аксиомы (стартовой строки), затем на каждой итерации заменяем символы по правилам. Результат интерпретируется как команды для «черепашки»:
F— шаг вперёд с рисованием+— поворот вправо на заданный угол-— поворот влево на заданный угол[— сохранить позицию (push)]— вернуться к сохранённой позиции (pop)
Из этих простых правил вырастают структуры, неотличимые от настоящих растений. Линденмайер использовал свою систему для моделирования роста водорослей, но оказалось, что она описывает фракталы, пространство-заполняющие кривые и целые экосистемы.