Thank you for your explanation.
My work revolves mostly around large enterprise software, so I guess this fits me.
But can you elaborate why not write a game engine with it? Game engines are also very complex.
Do you say because of the performance hit of multiple layers of abstractions?



What architecture do you suggest for complicated systems?