I am currently reading this book because it has challenges I can practice with .
In section 3.6 it states that for the add’ function defined as below
add' :: Int -> (Int -> Int)
add' x y = x + y
“More precisely, add takes an integer x and returns a function, which in
turn takes an integer y and returns the result x + y.”
I am confused on the returns a function part.
Breaking this down
I have add’ which is a function that takes one argument x
When we call it with x it returns another function
Does the function that get return = x + y ?
I guess what is weird to me is that in the code x and y are both supplied to add’ even though when we declared its type we only said it takes on Int.
I’m sure I am overthinking this.
Thanks in advance.