
oscar lopez
PreguntaEn este tema tengo varias dudas:
- Cual es el objetivo de usar funciones anidadas? En que tipo de casos puede ser utilizada? Tener funciones anidadas permite que sea mas rapida la ejecicion de una aplicacion?
- Puede tener una funcion mas de una funcion anidada?
- Puedo invocar desde otra funcion una funcion que contiene nested function?

Ricardo Félix Díaz López
Creo que en uno de los casos en donde te pueden servir las funciones anidadas, seria cuando utilizas decoradores. por ejemplo tu tienes una función que sabe sumar dos números, esta función al mismo tiempo forma parte del comportamiento sumar números de la clase usuario y clase la desarrollo, posteriormente decides que quieres aplicar polimorfismo al comportamiento sumar números de la clase usuario . específicamente quieres que aparezca una leyenda de "solo suma numeros enteros de no mas de dos digitos", una solución puede ser usar decorar la función y esto a su ves de usar closure.
Para hacer un programa mas velos me parece que puedes usar la big o notation, por ejemplo una función en donde tiene un ciclo dentro de otro ciclo, la forma de hacer este tipo de funciones mas veloces seria rescribir la función para que en lugar de usar ciclos use recursividad.

Augusto Borromeo
Buenas! mmm No se me ocurre ahora una utilidad contundente para responder la 1. Pero con respecto a las últimas 2 si se pueden tener más funciones anidadas ya que no dejan de ser bloques de código que se abren y se cierran, y si podes invocar desde otra función la función con nested function. Lo que no se puede hacer es invocar desde otra función la nested function, ya que esta última esta definida dentro de una función y no en el programa principal.