Separation of concerns..why AI and non-AI dependent code should never be mixed.
Locality of behavior - why separating AI and non-AI code introduces needless complexity.