https://www.realityisagame.com/archives/1006/meaningful-gameplay-and-separating-it-from-code/
Meaningful Gameplay and Separating it From Code