Esta pregunta tiene más que ver con la curiosidad que con la utilidad. Si estoy escribiendo una función que se supone que se ejecutará para siempre, por ejemplo un daemon, ¿cómo manejaría Python si volviera a llamar a la función desde el final de la función?¿Es pecado utilizar recursión infinita para bucles infinitos en Python?
def daemonLoop():
# Declare locals
# Do stuff
daemonLoop()
Estoy bastante seguro de que haciendo esto en C daría lugar a un desbordamiento de pila, pero teniendo en cuenta el nivel de abstracción de C a Python supongo cosas se maneja de manera diferente.
¿Me iría al infierno por esto?
La gente se va al infierno por los bucles de demonios, no por demonios ;-) En Python, obtendrá una excepción, "RuntimeError: la profundidad de recursión máxima excedida". –