Procedural vs. Object-Oriented Programming

Some languages and the type of programming they support Object-Oriented Programming requires a language to have the following:
Object-OrientedProcedural
  1. High level of abstraction
  2. Focus on objects and their built-in functionality
  3. Variables refer to objects which have functionality
  4. Focus on what is accomplished not on how it is done. The only time you look at the how something is done is when you are the designer of the object. At all other times, the details of how something is done are ignored.
  1. Low level of abstraction
  2. Focus on memory cells and what is in them
  3. Variables refer to memory cells and have values but no functionality
  4. Focus on the process - how to do something as much or more than what is being done.