To solve this task, we need a symbol (here A) that is replaced by some rotation (not around RH!) and a cylinder or F node. Shrinking can be achieved by adding a parameter to the A, that carries a decreasing number that is used as length for the cylinder/F node.
module A(float len);
protected void init() [
Axiom ==> A(1);
]
public void run()[
A(x) ==> F(x,0.05) RL(50) A(x*0.88);
]