Курс Raku / Функційне, конкурентне, реактивне та веб-програмування / Функційне програмування
Рекурсія
Ця частина курсу виходить за межі повсякденного й розглядає три потужні стилі програмування, які Raku підтримує особливо добре, — функційний, конкурентний та реактивний, — а потім пускає їх у справу для побудови вебсервісів.
Починаємо з функційного програмування — стилю, збудованого навколо підпрограм, що приймають і повертають інші підпрограми, значень, які обчислюються лише за потреби, та виразів замість покрокових інструкцій. Перша ідея — рекурсія: підпрограма, що викликає саму себе.
Рекурсивна підпрограма розв’язує задачу, зводячи її до меншого варіанту тієї самої задачі, аж поки задача не стане достатньо малою, щоб відповісти на неї безпосередньо. Зворотний відлік, обхід дерева, обчислення факторіала — усе це природно рекурсивне. Цей розділ показує, як написати рекурсивну підпрограму і, що не менш важливо, як її зупинити.
Теми цього розділу
Практика
Виконайте 3 тести за змістом цього розділу.
Вправи
У цьому розділі 4 вправи. Перш ніж братися до практики, вивчіть усі теми розділу.