johan 01.02.2012 13:31 Dům

Допустим, гипотетически, мне это нахуй не надо, я верю, что матан — зло, но меня прикалывает этот ваш программерский термин "замыкания". Какой мануал и к какому языку можно скурить за пару дней, чтобы составить себе представление, что это есть такое?

Recommended by: @rapture
1. vt 01.02.2012 13:37

википедию?

2. johanvt /1 01.02.2012 13:38 Dům

Не вариант же.

3. vtjohan /2 01.02.2012 13:38

эээ, почему? Не нашел никакого матана в статье

4. johanvt /3 01.02.2012 13:40 Dům

Потому что нихуя непонятно, чем это отличается от лямбд и как, щиорт побъери, внешняя функция может закончиться до окончания вложенной :(

5. vtjohan /4 01.02.2012 13:45

замыкание — это грубо говоря возможность передавать какой-либо функции в качестве переменной другую функцию. Лямбда — это просто краткая запись функции, без присваивания ей имени.

6. johanvt /5 01.02.2012 13:49 Dům

Ну я кретинопрофан и последний раз погромировал лет семь назад, а то и более, и то на пайтоне для цымбианов. Поэтому сейчас даже не вспомню, можно ли сказать x=лямбда(тут дохуя хуйни), и что эта лямбда в итоге увидит. Хочу узнать, об этом-то и весть топик.

7. vtjohan /6 01.02.2012 13:56

вот для "конечного пользователя", то есть для программиста, замыкание — это когда в языке программирования есть возможность присвоить переменной не просто число, или строку, а какую-то функцию, неважно, лямбда она или нет.

8. johanvt /7 01.02.2012 13:59 Dům

...и эта функция будет вызываться в момент каждого использования переменной же, правильно?

9. vtjohan /8 01.02.2012 14:00

да

10. johanvt /9 01.02.2012 14:02 Dům

Но КАК внешняя функция может закончить работу до того, как отработает вложенная? (Это из педивикии)???

11. vtjohan /10 01.02.2012 14:39

Ну вложенная функция может, например, в другом потоке выполняться, и может использовать то, что ей передали, даже если того кто передал уже нет.

12. johanvt /11 01.02.2012 14:44 Dům

Об этом я тоже в первую очередь подумал. Но ведь вроде как изначально и теоретически язьььь^Wыки программирования — отвязаны от потоков, да и для потоков есть отдельные асинхронные воркараунды же..

Do you really want to delete ?