Instructions: The text below lacks commas. Point and click between the words that need commas.
Programming paradigms part 2
For instance programming languages that fall into the imperative paradigm have two main features. First they state the order in which operations occur with constructs that explicitly control a specific order. Second they allow side effects which allow the state to be modified at one point in time within one unit of code and the state can later be read at a different point in time inside a different unit of code.
Meanwhile in the object-oriented programming paradigm the code is organized into objects containing states only modified by the code that is a part of the object. Most object-oriented languages are also classified as imperative languages.
In contrast languages that fit the declarative paradigm do not state the order in which to execute operations. Instead they supply a number of operations that are available in the system along with the conditions under which each is allowed to execute. The implementation of the language's execution model tracks which operations are free to execute and chooses the order on its own.
This text is adapted from a Wikipedia article Programming paradigm. This text is licensed under the Creative Commons Attribution-Share-Alike License 3.0.