Dlaczego Perl tak bardzo boi się „głębokiej rekursji”?
Niedawno natknąłem się na książkęPerl wyższego rzędu, który zasadniczo sugeruje sposoby działania w Perlu w sposób funkcjonalny. Autor wyjaśnia, że Perl ma 6 z 7 podstawowych funkcjiSeplenienie, podczas gdy C nie ma.
Miałem problem, który wyglądał jak dobry kandydat na rekurencyjne rozwiązanie, i kodowałem go w ten sposób. Ale Perl skarżył się na „głęboką rekursję”. Poszukałem trochę informacji i znalazłem mnicha z Perla wyjaśniającego, że „Perl to nie Haskell”. Domyślnie otrzymujesz skargę domyślnie, gdy głębokość rekurencji przekracza 100 poziomów.
Tamsą sposoby przedłużenia tego limitu lub całkowitego wyłączenia, ale moje pytanie brzmi:
Czy istnieje powód, dla którego Perl jest tak spięty, jeśli chodzi o rekursjęHaskell wcale nie jest?