Epizoda

C9 Přednášky: Dr. Erik Meijer - Základy funkčního programování Kapitola 6 z 13

V kapitole 6, Dr. Meijer nás provede světem rekurzivních funkcí. V Haskellu lze funkce definovat z hlediska sebe sama. Takové funkce se nazývají rekurzivní.

Příklad:

faktoriál 0 = 1
faktoriál (n+1) = (n+1) * faktoriál n

faktoriál mapuje 0 až 1 a jakékoli jiné kladné celé číslo na součin sebe sama a faktoriál jeho předchůdce.

Některé funkce, například faktoriální, jsou jednodušší definovat z hlediska jiných funkcí. Jak však vidíme, mnoho funkcí lze přirozeně definovat z hlediska sebe sama.

Vlastnosti funkcí definovaných pomocí rekurze lze prokázat pomocí jednoduché, ale výkonné matematické techniky indukce.

Měli byste je sledovat v posloupnosti (nebo přeskočit v závislosti na vaší úrovni znalostí v této doméně):

Kapitola 1 Kapitola2 Kapitola 3 Kapitola 4 Kapitola 5Kapitola 6Kapitola 7Kapitola 8Kapitola 9 Kapitola 10 Kapitola 11Kapitola 12Kapitola 13