While o Tail Recursion in F #, ¿qué usar cuando?
Ok, solo en F # y así es como lo entiendo ahora:
Algunos problemas son recursivos en la naturaleza (construir o leer una estructura de árbol para nombrar solo uno) y luego se usa la recursión. En estos casos, es preferible utilizar la recursión de cola para dar un descanso a la pila.
Algunos lenguajes son puramente funcionales, por lo que debe usar la recursión en lugar de bucles while, incluso si el problema no es de naturaleza recursiva
Entonces, mi pregunta: dado que F # también es compatible con el paradigma imperativo, ¿usaría la recursión de la cola en F # para problemas que no son naturalmente recursivos? ¿Especialmente desde que leí que el compilador reconoce la recursión de la cola y simplemente la transforma en un bucle de tiempo de todos modos?
Si es así, ¿por qué?