Sinceramente non so se in questo forum esiste qualcuno che abbia mai programmato in Haskell, ma ci provo ugualmente.

Non riesco a capire perchè a questa funzione:

multxyz = x∗y∗z

è associato questo tipo:

mult :: Int -> (Int -> (Int -> Int))

quando nella descrizione sul libro di Haskell dice che questa funzione non fa altro che fare il prodotto di quei tre numeri acquisendo i numeri uno ad uno.

Cioè matematicamente non dovrebbe essere un dominio del tipo INTxINTxINT -> INT ? perchè Haskell lo descrive in quella forma strana li?

Vi ringrazio in anticipo per qualsiasi aiuto,
Neptune.