Difference between revisions of "Currying"
From Wiki @ Karl Jones dot com
Karl Jones (Talk | contribs) (Created page with "In mathematics and computer science, '''currying''' is the technique of translating the evaluation of a function that takes multiple Parameter (computer programming)...") |
(No difference)
|
Latest revision as of 14:36, 16 May 2016
In mathematics and computer science, currying is the technique of translating the evaluation of a function that takes multiple arguments (or a tuple of arguments) into evaluating a sequence of functions, each with a single argument.
Description
It was introduced by Gottlob Frege, developed by Moses Schönfinkel, and further developed by Haskell Curry.
Uncurrying
Uncurrying is the dual transformation to currying, and can be seen as a form of defunctionalization.
It takes a function f(x) that returns another function g(y) as a result, and yields a new function f ′(x, y) that takes a number of additional parameters and applies them to the function returned by function f.
The process can be iterated.
See also
- Closed monoidal category
- Closure (computer science)
- Function (mathematics)
- Lazy evaluation
- smn theorem
- Tensor-hom adjunction
External links
- Currying @ Wikipedia