In computer science, functional programming is a programming paradigm where programs are constructed by applying and composing functions. It is a declarative programming paradigm in which function definitions are trees of expressions that map values to other values, rather than a sequence of imperative statements which update the running state of the program.
In functional programming, functions are treated as first-class citizens, meaning that they can be bound to names (including local identifiers), passed as arguments, and returned from other functions, just as any other data type can. This allows programs to be written in a declarative and composable style, where small functions are combined in a modular manner.
Functional programming has its roots in academia, evolving from the lambda calculus , a formal system of computation based only on functions.
“Functional Programming.” 2023. Wikipedia, April. https://en.wikipedia.org/w/index.php?title=Functional_programming&oldid=1149919082.