Курс языка программирования Raku / Функциональное, конкурентное, реактивное и веб-программирование / Функциональное программирование / Рекурсия / Базовый случай
Тест — Базовый случай
Что произойдёт, если у рекурсивной подпрограммы нет достижимого базового случая?
| 0 | Она вернёт Nil |
| 0 | Она вернёт 0 |
| 1 | Она будет вызывать себя без конца и в итоге упадёт |
| 0 | Компилятор откажется её запускать |
Без достижимого базового случая каждый вызов порождает следующий, и так без конца. Рекурсия не завершается, у программы в конце концов кончается стек вызовов, и она падает. Именно базовый случай и позволяет рекурсии остановиться.