Anonymous function
From Wikipedia, the free encyclopedia
In computer science and mathematics, an anonymous function is a function that has no name. Usually, a function is written like:
. It can be written anonymously as
These are used in functional programming languages and other programming languages with support for anonymous functions (those which support 1st class functions).
Contents |
[change] Examples in some programming languages
[change] Python
(lambda x: (lambda y: x * y))
The above code can be executed as a function:
>>>(lambda x: (lambda y: x * y))(3)(4) 12
[change] Haskell
\x -> \y -> x * y
The above code can be executed as a function:
(\x -> \y -> x * y) 3 4
The function can also be written in point-free (tacit) style:
(*)
[change] Standard ML
Not curried:
fn (x, y) => x * y (* or *) (op * )
Curried:
fn x => fn y => x * y
[change] JavaScript
// uncurried function(x, y) { return x * y; } // curried function(x) { return (function(y) { return x * y; }); }
[change] Scheme
;; uncurried (lambda (x y) (* x y)) * ;; usage: ((lambda (x y) (* x y)) 3 4) (* 3 4) ;; curried: (lambda (x) (lambda (y) (* x y))) ;; usage: (((lambda (x) (lambda (y) (* x y))) 3) 4)