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).