Este é o exercício em questão
Defina a função
compose :: [a → a] → (a → a)
, que compõe uma lista de funções em uma única função, assim, por exemplo:
compose [f0,f1,f2] x = f0 (f1 (f2 x))
O que eu codifiquei é assim
compose :: [a -> a] -> (a -> a)
compose (f:fs) = f . (compose fs)
Agora preciso retornar de algo se o argumento [a -> a] estiver vazio, mas não sei o quê. Então, por caso compose []
.
Desde já, obrigado!
Você usa
id
, ele mapeará o elemento em si mesmo. Este também seria o elemento neutro em um monóide que você pode construir sobre funções:sua função é equivalente a: