Operations change just one thing without affecting others
In a programming language means that a relatively small set of primitive constructs can be combined in a relatively small number of ways to build the control and data structures of the language.
Simplicity
Context-free