Function application in the context of Functional programming languages


Function application in the context of Functional programming languages

Function application Study page number 1 of 1

Play TriviaQuestions Online!

or

Skip to study material about Function application in the context of "Functional programming languages"


⭐ Core Definition: Function application

In mathematics, function application is the act of applying a function to an argument from its domain so as to obtain the corresponding value from its range. In this sense, function application can be thought of as the opposite of function abstraction.

↓ Menu
HINT:

In this Dossier

Function application in the context of Equality (mathematics)

In mathematics, equality is a relationship between two quantities or expressions, stating that they have the same value, or represent the same mathematical object. Equality between A and B is denoted with an equals sign as A = B, and read "A equals B". A written expression of equality is called an equation or identity depending on the context. Two objects that are not equal are said to be distinct.

Equality is often considered a primitive notion, meaning it is not formally defined, but rather informally said to be "a relation each thing bears to itself and nothing else". This characterization is notably circular ("nothing else"), reflecting a general conceptual difficulty in fully characterizing the concept. Basic properties about equality like reflexivity, symmetry, and transitivity have been understood intuitively since at least the ancient Greeks, but were not symbolically stated as general properties of relations until the late 19th century by Giuseppe Peano. Other properties like substitution and function application weren't formally stated until the development of symbolic logic.

View the full Wikipedia page for Equality (mathematics)
↑ Return to Menu

Function application in the context of Lambda calculus

In mathematical logic, the lambda calculus (also written as λ-calculus) is a formal system for expressing computation based on function abstraction and application using variable binding and substitution. Untyped lambda calculus, the topic of this article, is a universal machine, a model of computation that can be used to simulate any Turing machine (and vice versa). It was introduced by the mathematician Alonzo Church in the 1930s as part of his research into the foundations of mathematics. In 1936, Church found a formulation which was logically consistent, and documented it in 1940.

View the full Wikipedia page for Lambda calculus
↑ Return to Menu

Function application in the context of Combinatory logic

Combinatory logic is a notation to eliminate the need for quantified variables in mathematical logic. It was introduced by Moses Schönfinkel and Haskell Curry, and has more recently been used in computer science as a theoretical model of computation and also as a basis for the design of functional programming languages. It is based on combinators, which were introduced by Schönfinkel in 1920 with the idea of providing an analogous way to build up functions—and to remove any mention of variables—particularly in predicate logic. A combinator is a higher-order function that uses only function application and earlier defined combinators to define a result from its arguments.

View the full Wikipedia page for Combinatory logic
↑ Return to Menu

Function application in the context of Functional programming

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.

View the full Wikipedia page for Functional programming
↑ Return to Menu

Function application in the context of Function composition

In mathematics, the composition operator takes two functions, and , and returns a new function . That is, the function f is applied after applying g to x. is pronounced "the composition of f and g".

Reverse composition applies the operation in the opposite order, applying first and second. Intuitively, reverse composition is a chaining process in which the output of function f feeds the input of function g.

View the full Wikipedia page for Function composition
↑ Return to Menu

Function application in the context of Lambda-recursive function

In mathematical logic, the lambda calculus (also written as λ-calculus) is a formal system for expressing computation based on function abstraction and application using variable binding and substitution. Untyped lambda calculus, the topic of this article, is a universal machine, i.e. a model of computation that can be used to simulate any Turing machine (and vice versa). It was introduced by the mathematician Alonzo Church in the 1930s as part of his research into the foundations of mathematics. In 1936, Church found a formulation which was logically consistent, and documented it in 1940.

View the full Wikipedia page for Lambda-recursive function
↑ Return to Menu

Function application in the context of Composition of functions

In mathematics, the composition operator takes two functions, and , and returns a new function . When the composite function is evaluated at an input , the result is . That is, the function f is applied after applying g to x. The symbol is pronounced "f of g".

The composition of functions is a special case of the composition of relations, sometimes also denoted by . As a result, all properties of composition of relations are true of composition of functions, such as associativity.

View the full Wikipedia page for Composition of functions
↑ Return to Menu

Function application in the context of Functional programming language

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 entities, 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.

View the full Wikipedia page for Functional programming language
↑ Return to Menu