Since humanity has existed, we have created thousands of different languages to communicate with one another. On top of that, humans have built other communication tools to instruct computerized machines - programming languages.
Each programming language has its functionality depending on the requirement:
𝙋𝙧𝙤𝙘𝙚𝙙𝙪𝙧𝙖𝙡: The procedural programming language is used to execute a sequence of statements which lead to a result.
𝙁𝙪𝙣𝙘𝙩𝙞𝙤𝙣𝙖𝙡: Functional programing’s primary focus is on the return values of functions, and side effects, which suggests that storing states is powerfully discouraged.
𝙊𝙗𝙟𝙚𝙘𝙩-𝙤𝙧𝙞𝙚𝙣𝙩𝙚𝙙: One of the main principles of object-oriented programming language is encapsulation that everything an object will need must be inside of the object.
𝙎𝙘𝙧𝙞𝙥𝙩𝙞𝙣𝙜: they usually are not full-fledged programming languages with support for developing large systems.
𝙇𝙤𝙜𝙞𝙘: make declarative statements and then allow the machine to reason about the consequences of those statements.