CSC/ECE 517 Fall 2011/ch1 2a bi: Difference between revisions
(Created page with "== Introduction == Currying is the ability to take a function that accepts n parameters and generate from it one of more functions with some parameter values already filled in Ex...") |
No edit summary |
||
Line 1: | Line 1: | ||
== Introduction == | == Introduction == | ||
Currying is the ability to take a function that accepts n parameters and generate from it one of more functions with some parameter values already filled in | |||
Currying is the ability to take a function that accepts n parameters and generate from it one of more functions with some parameter values already filled in. | |||
Currying is the process of transforming a function that takes multiple arguments into a function that takes just a single argument and returns another function if any arguments are still needed. | |||
Currying has its origins in the mathematical study of functions. It was observed by Frege in 1893 that it suffices to restrict attention to functions of a single argument. For example, for any two parameter function f(x,y), there is a one parameter function f' such that f'(x) is a function that can be applied to y to give (f'(x))(y) = f (x,y). This corresponds to the well known fact that the sets (AxB -> C) and (A -> (B -> C)) are isomorphic, where "x" is cartesian product and "->" is function space. In functional programming, function applicat | |||
Explanation, history | Explanation, history | ||
Revision as of 05:32, 22 September 2011
Introduction
Currying is the ability to take a function that accepts n parameters and generate from it one of more functions with some parameter values already filled in. Currying is the process of transforming a function that takes multiple arguments into a function that takes just a single argument and returns another function if any arguments are still needed.
Currying has its origins in the mathematical study of functions. It was observed by Frege in 1893 that it suffices to restrict attention to functions of a single argument. For example, for any two parameter function f(x,y), there is a one parameter function f' such that f'(x) is a function that can be applied to y to give (f'(x))(y) = f (x,y). This corresponds to the well known fact that the sets (AxB -> C) and (A -> (B -> C)) are isomorphic, where "x" is cartesian product and "->" is function space. In functional programming, function applicat
Explanation, history