
16 Nov
2007
16 Nov
'07
8:49 a.m.
On Fri, 16 Nov 2007, jeff p wrote:
A function is an expression whose type is an arrow; e.g. Int -> Int. The type of taxRate is (Fractional t) => t.
I had this misunderstanding too, when starting with Haskell. In other languages there are functions with zero, one or more arguments. In contrast to that, Haskell functions have exactly one argument and one result, which I find is a nice thing. In other languages this is asymmetric, you can have multiple arguments but only one result. It is not possible to pass a struct to a function that expects multiple arguments. However, due to heavy usage of Schoenfinkel form in Haskell's standard functions the situation is similar in Haskell.