Я никогда не использовал вложенные функции, но видел ссылки на них на нескольких языках (а также на вложенные классы, которые, как я полагаю, связаны).
- Что такое вложенная функция?
- Почему?!?
- Что можно сделать с вложенной функцией, чего нельзя сделать никаким другим способом?
- Что вы можете сделать с вложенной функцией, это сложно или неэстетично без вложенных функций?
Я предполагаю, что вложенные функции — это просто артефакт обработки всего как объекта, и если объекты могут содержать другие объекты, то это следует из этого.
Имеют ли вложенные функции область видимости (в общем, я полагаю, что языки различаются по этому поводу), точно так же, как переменные внутри функции имеют область видимости?
Пожалуйста, добавьте язык, на который вы ссылаетесь, если вы не уверены, что ваш ответ не зависит от языка.
-Адам