hacer la función
Hola soy nuevo en la programación funcional. Lo que hice es
>>> g=lambda x:x*2
>>> f=g
>>> g=lambda x:f(f(x))
>>> g(9)
36
Ahora, no está creandog
como una función recursiva no terminante -g(x)
Se transforma en una nueva función que da el resultado.g(g(x))
.
>>> f=g
>>> g=lambda x:f(f(x))
>>> f(8)
RuntimeError: maximum recursion depth exceeded
Esperabag
Para ser transformado en una función que da el resultado.g(g(g(x)))
, según la primera definición de g (x). ¿Por qué no? ¿Es posible hacer una nueva función que resulte eng(g(g(...(g(x))....)))
¿Para un cierto número de iteraciones de esta manera?