[Haskell-beginners] infix functions with 3 args
Thomas Davie
tom.davie at gmail.com
Fri Mar 20 07:07:52 EDT 2009
On 20 Mar 2009, at 12:05, 7stud wrote:
> On p. 76 of RWH, it says:
>
> "If a function or constructor takes two or more arguments, we have
> the option of using it in infix
> form, where we place it between its first and second arguments."
>
> Here is my code:
>
> func2 x y = x + y
>
> func3 x y z = x + y + z
>
> Here are the results:
>
> *Main> func2 10 20
> 30
> *Main> 10 `func2` 20
> 30
> *Main> func3 10 20 30
> 60
> *Main> 10 `func3` 20 30
>
> <interactive>:1:11:
> No instance for (Num (t1 -> t))
> arising from the literal `20' at <interactive>:1:11-15
> Possible fix: add an instance declaration for (Num (t1 -> t))
> In the second argument of `func3', namely `20 30'
> In the expression: 10 `func3` 20 30
> In the definition of `it': it = 10 `func3` 20 30
>
> How do you get a function to work using infix notation when it has
> 3 arguments?
Prelude> (10 `func3` 20) 30
60
Bob
More information about the Beginners
mailing list