Объясните, пожалуйста, что такое замыкания, для чего они применяются на простом примере, желательно, Перл, т.к. как раз его изучаю.
Что знаю: замыкание это функция с привязанными к ней данными. Нашёл очень простой пример на javascript:
function createFunc(n) { return function() { alert(n*n) }; } function create(number) { var arr = []; for (var i=1; i<number; i++) { arr[i] = createFunc(i); } return arr; } var arr = create(100); arr[4]();
а зачем оно надо, ведь, можно же просто в массив загнать функции, которые потом вызывать _с параметром_ который выведется в alert();?
p.s. Ответ: "чтобы можно было вызывать функции без передачи параметра", мне ясности не принесёт. ;)