Difference between revisions of "Closure (computer programming)"
From Wiki @ Karl Jones dot com
Karl Jones (Talk | contribs) |
Karl Jones (Talk | contribs) |
||
Line 26: | Line 26: | ||
* [https://en.wikipedia.org/wiki/Closure Closure] @ Wikipedia | * [https://en.wikipedia.org/wiki/Closure Closure] @ Wikipedia | ||
+ | |||
+ | [[Category:Computer programming]] | ||
+ | [[Category:Computer science]] |
Latest revision as of 06:51, 23 April 2016
In programming languages, a closure (also lexical closure or function closure) is a technique for implementing lexically scoped name binding in languages with first-class functions.
Description
Operationally, a closure is a data structure storing a function together with an environment:
- A mapping associating each free variable of the function (variables that are used locally, but defined in an enclosing scope)
- With the value or storage location the name was bound to at the time the closure was created.
A closure -- unlike a plain function -- allows the function to access those captured variables through the closure's reference to them, even when the function is invoked outside their scope.
See also
- Computer programming
- Computer science
- Free variables and bound variables
- Google Closure Tools
- Subroutine
External links
The term closure has many different uses in different fields. See:
- Closure @ Wikipedia