Closure (computer programming)
The closure environment keeps the bound variables f and dx after the enclosing function (derivative) returns. In languages without closures, these values would be lost after the enclosing function returns. In languages with closures, a bound variable must be kept in memory as long as any closure has it.