Passando elementos da lista como parâmetros para a função ao curry

Ainda um novato Haskell aqui. Eu sei o suficiente para me meter em problemas com suposições erradas. Se eu tiver a seguinte função ...

quadsum w x y z = w+x+y+z

Eu quero uma função que pode ter uma lista, use cada elemento como parâmetro em uma função especificada comoquadsume retorne uma função ao curry para uso posterior.

Eu tenho tentado algo para o efeito de ...

magicalFunctionMaker f [] = (f)
magicalFunctionMaker f (x:xs) = magicalFunctionMaker (f x) xs

Com a esperança de poder fazer isso ...

magicalFunctionMaker (quadsum) [4,3,2]

Obtendo uma função ao curry como ...:

(((quadsum 4) 3) 2)

Ou, alternativamente, ligue para:

magicalFunctionMaker (quadsum) [4,3,2,1]

Resultando em...

((((quadsum 4) 3) 2) 1)

Isso é possível? Como estou enganado?

questionAnswers(6)

yourAnswerToTheQuestion