Programming paradigms are a way to classify programming languages based on their features. Languages can be classified into multiple paradigms.

[…]

Some common programming paradigms are,

  • imperative [Imperative programming] in which the programmer instructs the machine how to change its state,
  • declarative [Declarative programming] in which the programmer merely declares properties of the desired result, but not how to compute it
    • functional [Functional programming] in which the desired result is declared as the value of a series of function applications,
    • logic [Logic programming] in which the desired result is declared as the answer to a question about a system of facts and rules,
    • mathematical [Mathematical programming] in which the desired result is declared as the solution of an optimization problem
    • reactive [Reactive programming] in which the desired result is declared with data streams and the propagation of change

(“Programming Paradigm” 2023)

Bibliography