Allows encoding behavior as instructions for a virtual machine.
Real world example
A team is working on a new game where wizards battle against each other. The wizard behavior
needs to be carefully adjusted and iterated hundreds of times through playtesting. It's not
optimal to ask the programmer to make changes each time the game designer wants to vary the
behavior, so the wizard behavior is implemented as a data-driven virtual machine.