Shouldn't it be called "Nesting" instead of "Recursion"?
After all, recursion would be if the same factory is put in itself and used in it, which doesn't really work.
So "Nesting" or something different (something that is not "recursion") would be much better as a name...
"Recursion", while not the most fitting term, has unofficially been the common usage term for putting factory buildings inside each other for a long time, so I went with that instead of the more accurate "Nesting" to avoid a bunch of confusion.