Pattern matching em Haskell


Haskell permite definir funções por casos usando padrões:

fatorial 0 = 1
fatorial n = n * fatorial (n - 1)

Aqui, fatorial é definida recursivamente: se o argumento for 0, retorna 1; caso contrário, calcula n * fatorial(n-1).

Referências