Function Composition & Operator Forms

The symbolic structure of the Wolfram Language makes it easy to create "operators" that can be composed and manipulated symbolicallyforming "pipelines" of operationsand then applied to arguments. Some built-in functions also directly support a "curried" form, in which they can immediately be given as symbolic operators.

f@x function application f[x]

Composition or f@*x left-to-right composition f[g[_]]

x//f function application f[x]

RightComposition or f/*x right-to-left composition g[f[_]]

ApplyTo or x//=f x=f[x]

Construct construct an expression from its head and arguments

Function turn any expression into a pure function that can be applied

Identity identity function

InverseFunction symbolic inverse function

Inactive a function made inactive

OperatorApplied turn a function into one to be applied as an operator form

CurryApplied general "curried" operator form

ReverseApplied turn a function into one to be applied to reversed arguments

Functions with Operator Forms

Select represent a selection operator to apply to expressions

Map  ▪  Apply  ▪  MapApply

Append  ▪  Prepend  ▪  Insert  ▪  ReplacePart

SelectFirst  ▪  FirstCase  ▪  Cases  ▪  DeleteCases

Position  ▪  Extract  ▪  Delete

AnyTrue  ▪  AllTrue  ▪  NoneTrue

SortBy  ▪  MaximalBy  ▪  MinimalBy  ▪  DeleteDuplicatesBy

Rearranging Functional Forms

Operate form p[f][x] from p and f[x]

Through form {f[x],g[x]} from {f,g}[x]

Distribute distribute one symbolic function over another

Key operator to extract a value from an association